Skins mechanic in RVGL

Post suggestions regarding RVGL here in this subforum.
User avatar
ZipperZbieracz
Posts: 306

Skins mechanic in RVGL

Unread post by ZipperZbieracz » Thu Mar 29, 2018 10:21 pm

We just spotted on RVH that skins work online for joining players (joiners), but only if skins of joiners' choice have the same skins names as the hosters. If a joiner uses a skin that the hoster doesn't have (names of those skins have to be the same), then the skin doesn't change for the joiner (even on his own PC). Hoster can change to any skin he has. This mechanic has two major downsides:

1. All skins on players' PCs have to have the same names to work properly. This is fine, but not necessarily when people are free to add, delete and change the names as they wish (this is especially problematic when the hoster does that, as it influences all joiners as explained above).

2. Joiners may also want to use other skins (skins that only they have), which causes them to see a deafault skin of their car (because the hoster doesn't have the skin). It's natural that all other players, including the hoster see his car in the default skin, but I see no reason for the player himself to see his car in the default skin.

3. (unrelated) Skins are not listed at all, they are not remembered by the game at all, even at the car selection screen. They have to be picked every time when selecting the car. This would become very problematic if there would be a large number of selectable skins (very possible in the future).


A possible fix to issues in my mind can be adding these features/mechanics to RVGL:


a) For stock cars, create a folder in the cars' folders named "skins". Custom skins would be put there. They would be downloadable from IO, from whatever source or even bundled together with RVGL downloads. This folder (or the main car folder) could also contain a .txt file, which would assign a specific number to a specific skin that has a specific name. This way the skin could be remembered by the game (just like the last car and track selections are). Re-Volt community through voting on the channel "#car-skins" will pick which skins will go into the "official" skin pack and these would be updated and uploaded on IO page and packed with future RVGL updates. The numbers would be assigned to the skins based on the (for example) date of submission (stock skin = #1 or #0 or #stock, first win = #1 or #2 etc or something similar). Unofficial skins could be added to that folder by the player, but such skins wouldn't have their numbers assigned and wouldn't be remembered by the game, and in online games they would be seen only by the player using it, other players would see his car in the custom skin. That would organize the skin system and fix these 3 issues.

b) Allow for the same mechanic (a)) to work with custom cars.

tl;dr: Skins are great but need to be polished.
User avatar
Gotolei
Moderator
Posts: 52
From: The New Are

Re: Skins mechanic in RVGL

Unread post by Gotolei » Thu Mar 29, 2018 11:42 pm

Agreed with much of this. The exact structure of a new folder or folder tree would have to be figured out. Perhaps it could be expanded to include models, such as spinners and wheels? This might allow for repaints with altered mappings as well. Something involving a text file could include per-skin EnvRGB colorings.

Possibly relevant to #1, it seems that if the client finds a skin with a suffix longer than 11 characters (such as the "cardifferentfromhumma.bmp" in the dev/demo car Acclaim or "car base-yellow.bmp" in Kopan RD), it shows that there's options but doesn't actually load the file, even if offline.

Also tacking on here so as to not make a bunch of topics about the same thing: could it be made that in -dev mode, ctrl+R in the frontend refreshes the list of skins in addition to the rest of the car information?
Image
User avatar
Huki
Developer
Posts: 397

Re: Skins mechanic in RVGL

Unread post by Huki » Fri Mar 30, 2018 2:45 pm

ZipperZbieracz wrote: Thu Mar 29, 2018 10:21 pm 2. Joiners may also want to use other skins (skins that only they have), which causes them to see a deafault skin of their car (because the hoster doesn't have the skin). It's natural that all other players, including the hoster see his car in the default skin, but I see no reason for the player himself to see his car in the default skin.
That sounds like a bug. Players should be able to use a skin of their choice locally even if the host doesn't have that skin. I'll see about a fix for the next release.
User avatar
ZipperZbieracz
Posts: 306

Re: Skins mechanic in RVGL

Unread post by ZipperZbieracz » Fri Apr 06, 2018 1:02 pm

I spotted another issue, when the CARBOX.bmp is written with capital letters, game decides to allow to change to that "skin".

Image

That's another reason to create a new folder, in which the car skins would be placed.

I also came up with a different idea on how the skins could be remembered by the game; they don't have to be numbered through a skins.txt file (which would bring some problems), but instead the game would load, display and remember the skin file names, so the player doesn't have to pick the skin all the time after changing the car for a second or loading the game again, and players would be able to differentiate one skin from another by their names, which would be determined by their file name. Of course the skins would have to be appropetiately named beforehand. The custom skins sitting in the "skins" folder could be named either "toyecatxblack" or just "black", "caryellow" or "yellow". The game would display it as just "BLACK" or "YELLOW" below the selected car skin. Something like that (ofc with a proper font):

Image

On the other hand, I think that the AI should always drive with the stock skins, no matter of the player's skin of choice.
User avatar
Huki
Developer
Posts: 397

Re: Skins mechanic in RVGL

Unread post by Huki » Fri Apr 06, 2018 8:26 pm

ZipperZbieracz wrote: Fri Apr 06, 2018 1:02 pm I spotted another issue, when the CARBOX.bmp is written with capital letters, game decides to allow to change to that "skin".
This is a known issue on Windows and it's fixed for the next release. 'carbox.bmp', 'carbox256.bmp', etc. will be rejected irrespective of case.
ZipperZbieracz wrote: Fri Apr 06, 2018 1:02 pm[...] but instead the game would load, display and remember the skin file names, so the player doesn't have to pick the skin all the time after changing the car for a second or loading the game again, and players would be able to differentiate one skin from another by their names, which would be determined by their file name.
There are several issues with this:
  1. The length of the skin name is limited (currently to 11 chars) which is fine as long as it's only used as a file name. But display names can get longer than that. It also requires authors to update existing cars, or they'll show up with weird names.
  2. Saving the player's skin choice for each installed car will quickly bloat up the profile.ini, so we probably need a better solution than that.
User avatar
SebR
Posts: 168

Re: Skins mechanic in RVGL

Unread post by SebR » Sun Apr 08, 2018 11:45 am

Little suggestion
On the other hand, I think that the AI should always drive with the stock skins, no matter of the player's skin of choice.
I'm agree with that too BUT
If for some reason (random car, not enouth custom or not enouth unlocked car) the game need to use the same car several times on the same race : I thing that each identical AI-car should use a diffent skin (when possible)
Damn DROPBOX !!! If you found broken link PM me

AlicebanD an English voice that you must discover !!
User avatar
JohnCorl_x3
Posts: 16
From: Italy

Re: Skins mechanic in RVGL

Unread post by JohnCorl_x3 » Wed Apr 11, 2018 2:24 pm

Talking about skins, there is no skin during saved replay at the moment.
Post Reply