Garry's Mod

Garry's Mod

2,242 ratings
[wOS] DynaBase - Dynamic Animation Manager
2
3
3
2
   
Award
Favorite
Favorited
Unfavorite
Content Type: Addon
Addon Type: Model
Addon Tags: Fun, Roleplay
File Size
Posted
Updated
23.480 MB
Jan 11, 2023 @ 12:53pm
Jan 5 @ 7:34am
14 Change Notes ( view )

Subscribe to download
[wOS] DynaBase - Dynamic Animation Manager

In 2 collections by King David™
[wOS] Advanced Lightsaber Combat Requirements
15 items
Supported DynaBase Addons
40 items
Description
The beauty of the ValveBiped form at your fingertips

This is a wiltOS Week "Back to 2022" Item:
www.wiltostech.com/wosweek/2022/1

Description
The DynaBase is an animation base that gives full animation control to the player, the server, and the developers of the community. Change what animations are enabled, what order, or even decide to mount your own custom animations through a menu. Best of all, it will all update immediately so you can make tweaks and continue onward.

Pro-Tips

This already supports every wiltOS Animation Extension. Please subscribe to the legacy addon in the required content to add quick support for xDR. This is simply so you can actually use them within the menu and customize it.

YOU MUST UNSUBSCRIBE FROM ALL OTHER ANIMATION BASES, INCLUDING THE WILTOS ANIMATION BASE (FULL) AND XDREANIMATION BASE, FOR THIS TO WORK!

THIS ADDON IS CONSIDERED IN TESTING SO REPORT BUGS OR CRASHES IMMEDIATELY

Why is this a big deal?
Short Answer:
You could never dynamically load animations onto models. Developers can now use IncludeModel( MODEL_PATH ) in lua to add whatever they want, including animations from existing models like NPCs, directly onto the player. Updating it in-game is just a bonus.

Long Answer:
Previous iterations of animation bases for Garry's Mod, hell the source engine, hinged on not being able to dynamically change model and animation data which meant you were stuck with what you were given in terms of slots. Additionally, you would have to constantly restart and hope you had the exact same content otherwise you would see issues. Developers couldn't even use the ACTIVITY system, something built into animations, reliably because the ORDER of animations addons can ruin everything. As this was iterated with both the wiltOS Animation Base and xdReanimationBase, the inability to merge the server and client so they can work together became increasingly clear. So now, leveraging a lot of things we probably shouldn't be able to, you can do it.

How is it done?
What I discovered is that there's a fun source engine quirk that allows you to mount any kind of files into includemodel, no matter where it is, including data files. It simply needs to pass the inspection of a valid model pointer. Getting it to do that requires some custom model compilation, but once it's done it will work. However, you cannot flush m/f/z_anm.mdl's because they are considered protected data now. If you include a model however, you can refresh THAT, and data files are not protected. So if you run r_flushlod it will re-assemble everything. Combine all the concepts, we are basically making fake modelptrs in the data folder with whatever the developers are giving us, that are pointing to real models, in the most amazing double dutch you've ever seen.

The only problem left is r_flushlod is a usually unstable function that crashes clients. While it has been made a little more reliable in recent years, it still needs some work. By preventing anything from accessing the data during the refresh, it greatly reduces the chances of crashing even on repeat usage.

FEATURES
Power to the Player
- Ability to manage your own animations, or mount your own local models in game with a user mounting system
- Animations will work on any server, even those that don't have the animation base, as long as they don't force you to download a conflicting base
- Modify how your animations behave per-server, utilizing the server's own whitelisting system or your own

Power to the Server
- Animation syncing between server and client
- Ability to set content permissions, such as which animation extensions or re-animations are allowed, and in the exact order you want them to be
- Ability to restrict client mounting permissions. Should they be able to mount animations? Re-animations? Neither?
- Ability to disable user mounting to ensure everyone has the same experience

Power to Developers
- No limitation on what you can or can't include. No asking for animation slots, no worrying about naming the model correctly. Just include it and you're done
- IncludeModel now exposed to lua, and hooks for dynamic insertion to models
- Registration of models for easy in-game configuration and compatibility checking
- Level One animation correction, so there is no ACT collisions. Meaning you can mount NPC models without any problems

Fun Other Stuff (WIP)
- Automatically fixes itself if another animation base is installed, without you having to do a single restart!

Documentation
All the documentation on this animation base will be on our community wiki, which I will post about here when I update it: https://wiki.wiltostech.com/3/DYNABASE

You fill find installation instructions here: https://wiki.wiltostech.com/3/DYNABASE/Installation

Since this is the first time people are probably hearing about it, this is a free developer wiki for anyone, not just me, to use. If you want to read more, you can do that here: https://knockout.chat/thread/43942

Closing Remarks
This is a start to a long journey now. I have been experimenting with a lot of ideas for a few years but there is only so much one person can test alone. I'm hoping people are going to help catch problems and edge cases that may exist with the way this addon is made so we can push the tech forward. With this idea alone it will be possible, with some more work, to mount SMD files directly into models, in-game animation retargeting pre-inclusion, or allow each player to have a unique player model with it's own custom animations. I know, because these are the very same ideas I played with some time back. But before we get there, we need to make sure the foundation is right. Regardless of this does or doesn't work out, it will be a learning experience for everyone.

Need live help using the addon? Want to keep up to date with wiltOS Technologies? Consider joining our Community Discord![discord.gg]
Popular Discussions View All (4)
55
Jun 13 @ 7:43am
PINNED: BUG REPORTING
King David™
5
Jan 18, 2023 @ 6:34pm
Anyone knows how to mount and un-mount? (like the pictures shown)
CSGModFan2012
5
Mar 2 @ 11:13pm
PINNED: READ THIS AFTER SUBSCRIBING
King David™
217 Comments
finally NEW ANIMATIONSSS :lunar2019shockedpig::steamthis::steamthis:
TheToucanman #savepf2 Jun 2 @ 9:51pm 
i am hoping this gets big, because holy does this change a lot
King David™  [author] Jun 2 @ 3:14pm 
yeah something like that
Ika 236 Jun 2 @ 2:44pm 
qwesrdtyuikolñ{

{ñlkjhgftdrsasdrtfghyuijokjhgfvcxdcfgvhbjnkljhgytrfghyujtryguiytrgfhjk
pinoooi May 11 @ 6:15pm 
porno
:gordon::gordon:
SkiesOfHorizon May 6 @ 8:15pm 
Anyone know how to fix it for MWIII takedown.revive? I can't get it to work.
[ST6]Monster Apr 21 @ 4:22am 
The game will crash after finishing the loading process when you trying to load the Half-life 2 campaign map "d1_transtation_04" if you activate this mod....what's the problem?
imbot Apr 19 @ 3:04am 
my animations became low fps ones how do i fix it????
[AOC] Stormer Apr 17 @ 3:12am 
THX for the Viedeo ^^
thirulaxsan.j Apr 8 @ 4:12am 
i get it whats the problem theres no blood on normal npcs but pink blood on VJ base
does someone help me on that?