Page 1 of 1

[RVGL Release] 21.0905a

Posted: Mon Sep 06, 2021 1:27 am
by Huki
RVGL has been updated to 21.0905a!

Update:
Download Win32 [ setup | 7z ]
Download Win64 [ setup | 7z ]
Download Linux [ setup | 7z ]
Download macOS [ TBA ]
Download Android [ apk ]

Visit the topics for the Android version and the Shader edition for more information.

Goodies:
Download the Dreamcast Pack: rvgl_dcpack.zip
Download the Community Soundtrack: soundtrack.zip
Download the Controller Map Android app: rvgl_controllermap.apk
More about the update and RVGL: changelog | docs

Full game downloads are available at Re-Volt I/O.

Image The network version has been updated!


NOTE: The macOS release is expected to be delayed by one week. It will be announced separately.

Custom Animations:
It is now possible to have a custom animation triggered multiple times. To do this, set the TriggerOnce property of an animation to false. Read the updated docs for more info. Below is a potential use-case for multi-triggering animations (sample contributed by javildesign):



Custom animations can now have a Light, 3D Sound and Spark Generator attached to each bone. To learn how to add these to your animations, read the updated docs. You can insert a LIGHT, SFX or SPARK section at any keyframe, and then change their properties in further keyframes. Properties once added are inherited by further keyframes, so only the properties that must change again need to be specified. Below is an example:
► Custom Animated Light Sample
Adding a sound effect to a bone works similar to adding a model. This means you need to declare your sound files, typically at the top of the file, and set the SfxID for your bone. To stop playing a looping sound effect, set the SfxID to -1. Sounds can be played once or loop continuously.

Code: Select all

SFX     0   "gator"               ; This loads "custom/gator.wav"
SFX     1   "tw_plane"
SFX     2   "tw_plane_propellor"


Custom Cars:
There are new parameters to better customize weapon firing offsets. The Weapon parameter is renamed to WeaponOffset1 (the old name keeps working for existing cars). Use WeaponOffset1 to tweak the shockwave and firework generation offset. Use WeaponOffset2 to tweak the water balloon generation offset. The default values for both offsets are provided in the docs.

The support for low-CoM and flippable cars has improved.
  • Transfer of electropulse between low-CoM and high-CoM cars now works.
  • Weapons no longer spawn underground or explode onto the firing car itself.
  • Low-CoM cars are now detected when passing through trigger boxes.
  • When flippable cars are upside down, weapons and cameras re-orient themselves.
Online:
The host has new options to block players based on their IP address. The first option is a "Disconnect and Block" command. Select a player in the Waiting Room and press Ctrl + Shift + D. Unlike the plain Disconnect command, this disconnects the player and prevents them from joining the session again.

The next option is a global blocklist file that can be loaded at startup. As a host, you can use this feature to block repeat offenders if you know their IP address, but keep in mind that most people around the world have dynamic IPs (they keep changing), so you should keep your blocklist small and clean up old entries every now and then. Follow these steps to set up your blocklist:
  • Create a blocklist.txt file in your profiles folder (profiles\blocklist.txt).
  • Add IP addresses to this file, one on each line.
  • Add -blocklist to your list of launch parameters.
The game must be run with the -blocklist launch parameter for the blocklist file to be loaded. This way, you can enable the blocklist for high priority sessions and keep it disabled otherwise, without having to remove the file itself.

Editor:
AI Nodes editor received fixes and additions for two lesser known features: (1) Generating a racing line from ghost path, and (2) Generating smooth curves at turns. The modern editor now supports them and there are new commands added. The old commands continue to work in the legacy editor. The docs have sections covering these features.

To generate racing lines from ghost path, you must be in Time Trial mode, and you must have completed a record. To verify you have a record, look for the ghost car or enable it from Game Settings. Then, press G to generate the ghost path (you should see a red line that traces your record lap). Then press Shift + G to update the racing lines, and Ctrl + Shift + G to update the overtaking lines. Overtaking line generation is experimental and might require further manual tweaking.



To generate curves, hold down the N key and select 3 consecutive nodes, one before the turn, one at the turn itself and one after the turn. These are control points from which the curve is generated. Adjust the curve by moving the middle node's racing / overtaking lines. When you're satisfied, press Shift + N to update the racing lines, and Ctrl + Shift + N to update the overtaking lines.



NOTE: In the legacy editor, the commands for ghost path generation are 6 and Shift + 6. For curve generation, 1, 2 and 3 keys select the control nodes, and 4 and 5 keys update the racing / overtaking lines. Numpad keys can be used to adjust the curve.

Other Changes:
  • Libraries are upgraded on Windows and Android (SDL -> 2.0.14, ENet -> 1.3.17), and on Windows (OpenAL Soft -> 1.21.1).
  • FluidSynth 2 is supported for MIDI playback, so it should be working once again on newer Linux distros.
  • The audio device is initialized with a 48 kHz sample rate if supported.
  • Slovenian language is added (thanks to Mirko Ficko for the translation).
Bug Fixes:
  • Collision clipping bug: A long time issue that caused cars to randomly spin out when riding along walls is now fixed.
  • Fixed game window getting minimized when a message box is shown. The fix should also prevent a fullscreen display on a multi-monitor setup from minimizing, although this is not tested.
  • Fixed an inconsistency in music playback in a custom frontend when the In-Game Music option is turned off.
  • Fixed ball bearing texture cut off at the top in the weapon holder.
  • Fixed a bug that caused the Battle Tag timer to run slow.
► Show changelog of this version

Re: [RVGL Release] 21.0905a

Posted: Mon Sep 06, 2021 8:22 am
by 607
Amazing! I love having even more functionality for custom animations.
I'm looking forward to see what G_J and I_Spy can do with this. :D
The AI node updates are great, I hope this will make the task less daunting for people. I noticed that in the first video, it says 'created racing line from ghost path' both times, also for the overtaking line.
The changes for low-CoM cars are intriguing! I wonder how you did it and how it will affect custom cars. I'm going to try Fidget Spinner!
Interesting that you fixed the ball bearing texture; why so late?
What's the MIDI support for? The piano?

Re: [RVGL Release] 21.0905a

Posted: Mon Sep 06, 2021 7:34 pm
by revolting1
Fantastic! as For the low-CoM cars: by driving Huma up the escalators on Museum 2 and shooting an opponent I can attest that that the issue is fixed, in previous versions whenever you'd do that you'd be shooting yourself :),

In the case of MIDI support I guess it is for the newer versions of linux and that it is needed to be able to listen any sound on those versions, but that is just a guess :?:

Re: [RVGL Release] 21.0905a

Posted: Mon Sep 06, 2021 8:32 pm
by VaidX47
607 wrote: Mon Sep 06, 2021 8:22 am What's the MIDI support for? The piano?
*.mid files. The best use case for this would be sampled n64 music tracks, the only issue being with extracting the soundfont or tracks themselves, some instruments don't sound right or are missing.

Re: [RVGL Release] 21.0905a

Posted: Tue Sep 07, 2021 12:28 pm
by AMB1976
Hi, it's a great release!!!

I have 2 suggestions to Huki and to the community, I'll put my two questions here:

1) - Is there any chance to save stock and/or custom cups?

2) - Is there a way to go on in my cup and complete all stages even if at the end of a race my final standing is out of the first 3
positions?
I'd like to continue my cup and finish it even if i stand in the last position on every single stage, just to complete the whole cup
stages and see my final score...

Thanks to all...

Re: [RVGL Release] 21.0905a

Posted: Wed Sep 08, 2021 6:18 pm
by Ato
> When flippable cars are upside down, weapons and cameras re-orient themselves.
Huki, can we toggle this somehow? I rather like the upside down hood view with Rotor... It's an added challenge.

Greetz,
Ato

Re: [RVGL Release] 21.0905a

Posted: Sat Sep 11, 2021 1:07 pm
by SebR
I still not use shader on my old Linux 32bit, what does means the "-1" ?
Image

Re: [RVGL Release] 21.0905a

Posted: Wed Sep 15, 2021 2:18 pm
by Huki
607 wrote: Mon Sep 06, 2021 8:22 am I noticed that in the first video, it says 'created racing line from ghost path' both times, also for the overtaking line.
Good catch, I should fix that.
607 wrote: Mon Sep 06, 2021 8:22 am What's the MIDI support for? The piano?
For playing *.mid files for the level music (see the doc section).
SebR wrote: Sat Sep 11, 2021 1:07 pm I still not use shader on my old Linux 32bit, what does means the "-1" ?
Starting with this release, the version string includes a revision number, to better manage multiple releases on the same day (eg, a hotfix).

Re: [RVGL Release] 21.0905a

Posted: Tue Sep 21, 2021 5:07 am
by Ato
Ato wrote: Wed Sep 08, 2021 6:18 pm > When flippable cars are upside down, weapons and cameras re-orient themselves.
Huki, can we toggle this somehow? I rather like the upside down hood view with Rotor... It's an added challenge.
After testing some more:
Also, hood cam now breaks in principle when flipped (sinks into the car).

The rest, of course, is marvellous work by Huki, as always. :re-volt: :re-volt: :re-volt:

Greetz,
Ato

Re: [RVGL Release] 21.0905a

Posted: Fri Sep 24, 2021 2:29 pm
by 7wells
Hello! Long time, no write. ;)

I wonder if the Linux python script could be updated to use aria2 for faster download of the packages?
https://rvgl.re-volt.io/downloads/install_rvgl.py

Plain wget is not very fast. :worm:

Anyway, thanks for keeping RVGL such a great game over so many years! :thumbsup:

PS1:
Do I understand it right that also under Linux, one has to first install RVGL (e.g. via this install script) and can only then use the RVGL launcher?
https://re-volt.gitlab.io/rvgl-launcher/

PS2 (more docs for Linux users):
https://re-volt.gitlab.io/rvgl-docs/os- ... l#gnulinux
BTW, libjpeg8 does not exist (in Debian 11).

Re: [RVGL Release] 21.0905a

Posted: Fri Sep 24, 2021 3:35 pm
by 7wells
I cannot install RVGL on Debian 11 (stable, clean installation):

Code: Select all

user@debian:~/.rvgl$ ./setup 
Welcome to RVGL setup.
WARNING: This will modify your RVGL installation in:
	/home/user/.rvgl
Are you sure? [y/N] y

Fixing filenames...
./cars/phim_ultraRV was not renamed
Clearing libs...
Creating launcher...
Setting permissions...
Registering for lobby...
./rvgl: Zeile 24: ldconfig: Kommando nicht gefunden.
./rvgl: Zeile 24: ldconfig: Kommando nicht gefunden.
./rvgl: Zeile 24: ldconfig: Kommando nicht gefunden.
Error loading libfluidsynth.so.3: libfluidsynth.so.3: cannot open shared object file: No such file or directory
Done.
Press any key to continue.
The culprit is ldconfig in line 24 of the rvgl script that is called:

Code: Select all

#!/bin/bash

DIR="$(dirname "$(readlink -f "$0")")"

cd "$DIR"

LIB_DIR="$DIR/lib"

if [ $(uname -m) = "x86_64" ]; then
  exec="./rvgl.64"
  lib="lib64"
else
  exec="./rvgl.32"
  lib="lib32"
fi

libnames=(
  "libenet.so.7"
  "libopenal.so.1"
  "libunistring.so.2"
)

for file in ${libnames[@]}; do
  if [ ! "$(ldconfig -p | grep $file)" ]; then
    [ -e "$LIB_DIR/$lib/$file" ] && [ ! -e "$LIB_DIR/$file" ] && ln -s "$LIB_DIR/$lib/$file" "$LIB_DIR"
  else
    [ -e "$LIB_DIR/$file" ] && rm "$LIB_DIR/$file"
  fi
done

export LD_LIBRARY_PATH=$LIB_DIR:$LD_LIBRARY_PATH

$exec "$@"
Because ldconfig needs root (sudo). What can I do? Executing the rvgl script as root is not a good idea, or is it?

Well, I can execute the rvgl.64 binary, and the game works, apart from these (same) error message after closing:

Code: Select all

user@debian~/.rvgl$ ./rvgl.64 
Error loading libfluidsynth.so.3: libfluidsynth.so.3: cannot open shared object file: No such file or directory
Thanks for your help to get these 2 issues (ldconfig and missing libs) resolved! :)

Re: [RVGL Release] 21.0905a

Posted: Thu Sep 30, 2021 5:41 pm
by 607
revolting1 wrote: Mon Sep 06, 2021 7:34 pm In the case of MIDI support I guess it is for the newer versions of linux and that it is needed to be able to listen any sound on those versions, but that is just a guess :?:
Imagine what the sound effects would be like if they had to use MIDI. xD

Re: [RVGL Release] 21.0905a

Posted: Thu Sep 30, 2021 7:09 pm
by 7wells
I've switched from Debian to EndeavourOS (ArchLinux) and don't regret it - it rocks. :D
I've installed rvgl via its launcher for Linux. The prerequisites were easy to fulfill. Rvgl is much faster/ smoother as on Debian or Windows 10 (same PC). :)

Re: [RVGL Release] 21.0905a

Posted: Mon Oct 04, 2021 3:01 pm
by Huki
7wells wrote: Fri Sep 24, 2021 2:29 pm Hello! Long time, no write. ;)

I wonder if the Linux python script could be updated to use aria2 for faster download of the packages?
https://rvgl.re-volt.io/downloads/install_rvgl.py

Plain wget is not very fast. :worm:
Welcome back. :) The Linux python script is superseded by RVGL Launcher. Although the official download link still points to the python script (this will change soon), using the Launcher is recommended.
7wells wrote: Fri Sep 24, 2021 2:29 pm Do I understand it right that also under Linux, one has to first install RVGL (e.g. via this install script) and can only then use the RVGL launcher?
https://re-volt.gitlab.io/rvgl-launcher/
As I said above, the Launcher is a replacement for the old install script.
7wells wrote: Fri Sep 24, 2021 2:29 pm PS2 (more docs for Linux users):
https://re-volt.gitlab.io/rvgl-docs/os- ... l#gnulinux
BTW, libjpeg8 does not exist (in Debian 11).
Good catch. On Debian it's libjpeg62-turbo. I think the image codec dependencies are automatically pulled in when you installed the sdl2-image package, so maybe those can be removed from the docs.

Re: [RVGL Release] 21.0905a

Posted: Mon Oct 04, 2021 3:05 pm
by Huki
7wells wrote: Fri Sep 24, 2021 3:35 pm I cannot install RVGL on Debian 11 (stable, clean installation):
The culprit is ldconfig in line 24 of the rvgl script that is called:
Because ldconfig needs root (sudo). What can I do? Executing the rvgl script as root is not a good idea, or is it?
Running RVGL as root is definitely not a good idea. I've removed the ldconfig dependency in the upcoming release.
7wells wrote: Fri Sep 24, 2021 3:35 pm Well, I can execute the rvgl.64 binary, and the game works, apart from these (same) error message after closing:

Code: Select all

user@debian~/.rvgl$ ./rvgl.64 
Error loading libfluidsynth.so.3: libfluidsynth.so.3: cannot open shared object file: No such file or directory
This is a harmless message. There are 3 different libfluidsynth.so reflecting different ABI versions. The game will check for all of them and load the one that's present (in your case, this is probably libfluidsynth.so.2).

Re: [RVGL Release] 21.0905a

Posted: Mon Oct 04, 2021 3:29 pm
by 7wells
Hi Huki, glad to hear from you as well. :) Meanwhile, I've switched to EndeavourOS (ArchLinux) and only use the RVGL Launcher (i.e. no script). Thus, RVGL runs very fast even on a 4K TV set with gfx settings maximised on a PC from 2008 (Intel board with Asus Nvidia GT710 GPU). I'm so happy that you and your team are so active for this great game - it's highly appreciated - thank you! :thumbsup:

We play splitscreen with 4 players and 4 xbox-clone controllers. All of them have vibration that works when tested under Linux (fftest from the linuxconsole package):
evdev API

The new 'evdev' API can be tested using the SDL2 joystick test application or using evtest from community repository. Install sdl2-jstest-gitAUR and then run sdl2-jstest --test 0. Use sdl2-jstest --list to get IDs of other controllers if you have multiple ones connected.

To test force feedback on the device, use fftest from linuxconsole package:

Code: Select all

$ fftest /dev/input/by-id/usb-*event-joystick
https://wiki.archlinux.org/title/Gamepad

And they also work nicely in RVGL, too. :D

I have some questions about vibration:
  1. Does your code check the gamepads' energy and stop using vibration under a certain energy threshold, so the users can play further (without vibration) before they need to exchange the batteries? Or will vibration just wear off the batteries until they are empty?
  2. There are tracks (e.g. Best Milk Farm, which we really love) that star a rough ground, thus making the gamepads constantly rumble. While I understand that some kind of vibration in sync with rough spots of a track is wanted, I wonder if there could be solution to have vibrations paused when almost all parts of a track a rough? Else, one has to toggle vibration on/off every time when selecting a non-rough/rough track. ;)
  3. When hitting other cars or obstacles (like walls), there is no vibration. Is this intended, maybe to save batteries? I would understand it well, but wonder if maybe vibration could be fired at least when colliding very hard. The same goes for being hit by a missile, being blown up by the bomb, or even when landing after a fall from a certain height. What are your thoughts on this?
EDIT:
RVGL has been updated to 21.0930a!
viewtopic.php?f=8&t=1501
Thank you, Huki! :heart: