Home » MODDING HQ 1.13 » v1.13 Idea Incubation Lab  » Logical Bodytypes code added into the trunk (WIP)
icon1.gif  Logical Bodytypes code added into the trunk (WIP)[message #359041] Sat, 15 February 2020 21:52 Go to next message
Asdow is currently offline Asdow

 
Messages:126
Registered:August 2010
https://i.imgur.com/SIslLRK.png

Firstly, Bio's logical bodytypes was recently added into the trunk, and the code is functional but its current state is just a proof that it functions and you can draw layered sprites. We're still long ways away from having it being fully realized in the game because we need to remake all the animations for all the bodies. If a logical bodytype is missing an animation, nothing is drawn on the screen so the regular bodytype mercs will be invisible when it's enabled in all animations except for regular male, rifle weapon raised, crouched walking animation. Any rifle type weapon should work, and shotgun type weapons have their own sprite. Steel helmet, TIMS backpack & hat with uiIndex 285 have sprites that will show up if worn in that animation. An example of how this looks can be seen in this video I recorded to show that it functions.



With that out of the way, here's how it works as far as how I've understood it.
There are 5 .xml files in Data-1.13/TableData/LogicalBodyTypes that are used to define a bodytype.

LogicalBodyTypes.xml:
Defines a logical bodytype, what filters is used to select said bodytype and what animationsurfaces are available for its layers and layerprops.
A recommended way to add logical bodytypes is to have the actual data in an external .xml file and add it to the LogicalBodyTypes.xml using an ENTITY. As an example, here's how LogicalBodyTypes is currently
<!DOCTYPE LogicalBodyTypes [
	<!ENTITY LobotRGM SYSTEM "LogicalBodyTypes\LBT_RGM\LogicalBodyType_LBT_RGM.xml">
]>
<LogicalBodyTypes>
	<!-- Bodytypes should be ordered from most specific -> most general -->
	<!-- ExcludedObjects filter in the beginning is used to exclude LOBOT system for certain types. In this case filter ExcludedObjects is set up to limit LOBOT only for soldiers with a profile. -->
	<LogicalBodyType filter="ExcludedObjects" />
	<LogicalBodyType filter="IsRegularMaleAverage" cachesize="2">&LobotRGM;</LogicalBodyType>
</LogicalBodyTypes>
where
'filter' is used to select a specific bodytype if the condition is met. Bodytypes should be ordered from most specific to most general starting from the top.
'cachesize' How big the LRU cache for a bodytype is. Minimum value is 2. It's used to improve performance and cache size should be adjusted depending on the amount of animation states and props a logical bodytype has.

The LogicalBodyType_LBT_RGM.xml contains the relevant data for the defined bodytype. An excerpt for one layer is
<LogicalAnimationSurfaces>
	<Layer name="helmet">
		<LayerProp filter="IsWearingHat" palette="hats">
			<Surface name="LBT_RGMRIFLE_WALK_CROUCH_HAT" animsurface="RGMCROUCH_R_RDY" />
		</LayerProp>
		<LayerProp filter="IsWearingHelmet">
			<Surface name="LBT_RGMRIFLE_WALK_CROUCH_HELMET" animsurface="RGMCROUCH_R_RDY" />
			<Surface name="LBT_RGMRIFLE_WALK_CROUCH_HELMET" animsurface="RGMCROUCH_P_RDY" />
		</LayerProp>
	</Layer>
</LogicalAnimationSurfaces>
where
'layer name' defines what layer the layerprop surfaces belong to. Name must match with one of the layers defined in Layers.xml
'LayerProp' is a specific prop that is then drawn depending on if the filter used is applicable.
'filter' what condition must be fulfilled for this layerprop to be rendered
'palette' is used if a prop needs a fixed palette or colors that are not available in the default dynamic palette that is used for merc sprites. Name must match with a palette defined in Palettes.xml
'Surface' holds the animation surface that we want to render, and what animation surface does it get used for
'name' defines what logical bodytype animation surface should be used. Name must match with an AnimSurface found in AnimationSurfaces.xml
'animsurface' defines what original animationsurface is the logical one supposed to be used for. In the example, there are two Surfaces under the Layerprop for when the merc is wearing a helmet. The 'name' is the same in this case, because the animation is so similar that the same animation could be used for both. 'animsurface' differs only by one letter, 'R' vs 'P'. These are the animation surfaces that the game uses for regular male crouch walking in a weapon ready stance. One is for rifle weapon and the other for pistol.


AnimationSurfaces.xml:
Defines the actual animation files to be used for a specific animation for a logical bodytype. A recommended way to add animation surfaces is to have the actual data in an external .xml file and add it to the AnimationSurfaces.xml using an ENTITY. As an example, here's how AnimationSurfaces is currently
<!DOCTYPE AnimSurfaces [
	<!ENTITY AnimSurfaces_LobotRGM SYSTEM "LogicalBodyTypes\LBT_RGM\AnimationSurfaces_LBT_RGM.xml">
]>
<AnimSurfaces>
	&AnimSurfaces_LobotRGM;
</AnimSurfaces>

And the AnimationSurfaces_LBT_RGM.xml has the actual surfaces defined, which look like
<AnimSurface name="LBT_RGMRIFLE_WALK_CROUCH_HEAD" file="Anims\LOBOT\RGM\crouched_walk_rifle_head.STI" flags="0" structdata="ANIMS\STRUCTDATA\M_CROUCH.JSD" directions = "8" framesperdir="24" profile="-1" />
where
'name' is used in LogicalBodyTypes.xml to select a specific animation
'file' points to the file where the animation data is stored. By default, the code looks for these in the 'Data' folder, so the actual path in the example is Data/Anims/LOBOT/RGM/animationfile.sti
'flags' unknown currently, it's used somewhere in the code, but it has not been relevant so far in our quest to get this working in the first place
'structdata' tells what .JSD file to use for the anim, if any. In a merc's case, it's pretty much dependent on what stance is the animation supposed to be for.
'directions' how many directions does the animation have. For merc's it's pretty much always 8
'framesperdir' How many frames per direction is in the animation. New animations *must* have the same amount of frames per direction as the underlying animation. Otherwise bad things happen!
'profile' unknown currently. Same thing as with flags, wasn't relevant to get this working.


Palettes.xml:
Defines fixed palettes that can be used for layerprops in LogicalBodyTypes.xml. Useful for certain props. In bio's example video, the navy dress uniform used a fixed palette, so the uniform is always the same color regardless of a merc's dynamic clothing colors. An entry looks like this:
<Palette name = "hats" filename = "Palettes\Hats.stp" />
where
'name' identifies it, so it can be used in the other .xmls
'filename' points to the actual palette file, can be either .act or .stp palette file. By default, the code looks for these in the 'Data' folder, so the actual path in the example is Data/Palettes/Hats.stp


Layers.xml:
Defines layers that can be used to stitch a sprite together during rendering. An entry in Layers looks like
<Layer name="body" render="1" shadow="0">2</Layer>
where
'name' of the specific layer.
'render' tells whether the layer should be rendered or not, with values 1 or 0.
'shadow' determines whether any shadow is rendered for this specific layer, possible values 1 or 0.
number value at the end I'm not completely sure about, could be a unique identifier for the layer? I kept them as a running number and have not played with it so far.
Currently there are 12 layers defined; shadow, legs, body, hands, head, gun, helmet, facegear, vest, backpack, legrig & knees. A base body consists of layers shadow, legs, body, hands & head. Shadow is used for drawing the ground shadow for the base body. Other layers are meant for their respective props. If multiple layers draw shadows in the same spot, the shadow on the ground gets darker with every pass, so that's why only gun and backpack are currently set up to draw shadows on the ground in addition to the basebody. Due to JA's small resolution, it's not noticeable whether a helmet or a vest has ground shadows or not.
I tried to come up with a reasonable number of layers that give us a good starting point to implement props for animations, taking into account the low resolution of JA's graphics. Layers are not hardcoded and can be extended if one wants/needs to.


Filters.xml:
Filters are used in LogicalBodyTypes.xml to select a specific bodytype and what graphics are drawn in a specific layer for a certain animation surface. You can match conditions against a great number of different things, like physical bodytype, merc's name, sex, skill/experience level, if he has a specific item in a specific slot etc. Operations available for filters are: AND, OR, NOT, EQUAL, GREATER THAN, LESS THAN, BETWEEN & IN

Couple of examples of filters:
	<Filter name="IsWearingBackpack">
		<AND>
			<BODYTYPE>REGMALE</BODYTYPE>
			<BPACKPOCKPOS op="in">1094</BPACKPOCKPOS>
		</AND>
	</Filter>
	<Filter name="IsShotgun">
		<AND>
			<BODYTYPE>REGMALE</BODYTYPE>
			<WEAPON_IN_HAND>1</WEAPON_IN_HAND>
			<WEAPON_TYPE>GUN_SHOTGUN</WEAPON_TYPE>
		</AND>
	</Filter>
		<!-- Matches all soldier objects, that are supposed to be rendered as average height regular male -->
	<Filter name="IsRegularMaleAverage">
		<OR>
			<BODYTYPE>REGMALE</BODYTYPE>
		</OR>
	</Filter>
IsWearingBackpack for instance, applies only if a regular male bodytype is wearing TIMS backpack. IsShotgun selects for a regular male having a shotgun type weapon in his hands.

List of availabe stats to match against are:
    NAME
    PROFILENAME
    NICKNAME 
    SEX
    possible values->
        MALE
        FEMALE
    MERC_TYPE
    possible values->
        MERC_TYPE__PLAYER_CHARACTER
        MERC_TYPE__AIM_MERC
        MERC_TYPE__MERC
        MERC_TYPE__NPC
        MERC_TYPE__EPC
        MERC_TYPE__NPC_WITH_UNEXTENDABLE_CONTRACT
        MERC_TYPE__VEHICLE
    SOLDIER_CLASS
    possible values->
        SOLDIER_CLASS_NONE
        SOLDIER_CLASS_ADMINISTRATOR
        SOLDIER_CLASS_ELITE
        SOLDIER_CLASS_ARMY
        SOLDIER_CLASS_GREEN_MILITIA
        SOLDIER_CLASS_REG_MILITIA
        SOLDIER_CLASS_ELITE_MILITIA
        SOLDIER_CLASS_CREATURE
        SOLDIER_CLASS_MINER
        SOLDIER_CLASS_ZOMBIE
        SOLDIER_CLASS_TANK
        SOLDIER_CLASS_JEEP
        SOLDIER_CLASS_BANDIT
    BODYTYPE
    possible values->
        REGMALE
        BIGMALE
        STOCKYMALE
        REGFEMALE
        ADULTFEMALEMONSTER
        AM_MONSTER
        YAF_MONSTER
        YAM_MONSTER
        LARVAE_MONSTER
        INFANT_MONSTER
        QUEENMONSTER
        FATCIV
        MANCIV
        MINICIV
        DRESSCIV
        HATKIDCIV
        KIDCIV
        CRIPPLECIV
        COW
        CROW
        BLOODCAT
        ROBOTNOWEAPON
        HUMVEE
        TANK_NW
        TANK_NE
        ELDORADO
        ICECREAMTRUCK
        JEEP
        COMBAT_JEEP
    WEAPON_CLASS
    possible values->
        NOGUNCLASS
        HANDGUNCLASS
        SMGCLASS
        RIFLECLASS
        MGCLASS
        SHOTGUNCLASS
        KNIFECLASS
        MONSTERCLASS
    WEAPON_TYPE
    possible values->
        NOT_GUN
        GUN_PISTOL
        GUN_M_PISTOL
        GUN_SMG
        GUN_RIFLE
        GUN_SN_RIFLE
        GUN_AS_RIFLE
        GUN_LMG
        GUN_SHOTGUN
    CIVILIANGROUP
    possible values->
        NON_CIV_GROUP
        REBEL_CIV_GROUP
        KINGPIN_CIV_GROUP
        SANMONA_ARMS_GROUP
        ANGELS_GROUP
        BEGGARS_CIV_GROUP
        TOURISTS_CIV_GROUP
        ALMA_MILITARY_CIV_GROUP
        DOCTORS_CIV_GROUP
        COUPLE1_CIV_GROUP
        HICKS_CIV_GROUP
        WARDEN_CIV_GROUP
        JUNKYARD_CIV_GROUP
        FACTORY_KIDS_GROUP
        QUEENS_CIV_GROUP
        ASSASSIN_CIV_GROUP
        POW_PRISON_CIV_GROUP
        VOLUNTEER_CIV_GROUP
        BOUNTYHUNTER_CIV_GROUP
        DOWNEDPILOT_CIV_GROUP
        SCIENTIST_GROUP
        RADAR_TECHNICIAN_GROUP
        AIRPORT_STAFF_GROUP
        BARRACK_STAFF_GROUP
        FACTORY_GROUP
        ADMINISTRATIVE_STAFF_GROUP
        LOYAL_CIV_GROUP
        BLACKMARKET_GROUP
    HELMETPOS
    VESTPOS
    LEGPOS
    HEAD1POS
    HEAD2POS
    HANDPOS
    SECONDHANDPOS
    VESTPOCKPOS
    LTHIGHPOCKPOS
    RTHIGHPOCKPOS
    CPACKPOCKPOS
    BPACKPOCKPOS
    GUNSLINGPOCKPOS
    KNIFEPOCKPOS
    TEAM
    CAMO
    URBANCAMO
    DESERTCAMO
    SNOWCAMO
    EXPLEVEL
    STRENGTH
    LEADERSHIP
    WISDOM
    SKILLTRAIT1
    SKILLTRAIT2
    FACEINDEX
    WEAPON_IN_HAND
    CALIBRE
    VEST_AMOR_PROTECTION
    VEST_AMOR_COVERAGE
    HELMET_AMOR_PROTECTION
    HELMET_AMOR_COVERAGE

As a reference, here's the link to bio's original thread where he elucidates on the implementation as well.
http://thepit.ja-galaxy-forum.com/index.php?t=msg&th=17102&start=0&


Lastly, a big thank you to
bio for making the actual LOBOT implementation
merc05 for figuring out the two missing files' structures and updating the code to work in a newer revision of JA and helping me with getting JA to even launch with LOBOT.
Taro for the render setup for rendering props and helping me by answering all my questions.
Seven for code voodoo help with Imagemagick

CC Attribution credits for 3d models used in rendering props
Hellroon - Travel Backpack
MrIllix - Cowboy Hat
studio lab - American Helmet
TastyTony - Low-Poly Mossberg 500

[Updated on: Sun, 06 September 2020 20:34]

Report message to a moderator

Sergeant
Re: Logical Bodytypes code added into the trunk (WIP)[message #359100 is a reply to message #359041] Thu, 27 February 2020 18:40 Go to previous messageGo to next message
killerpfiffi is currently offline killerpfiffi

 
Messages:22
Registered:December 2009
Location: Austria
This looks great.

May I ask if you (and the people you mentioned) plan to finish this implementation on your own? Or do you need help?

Maybe you can outline the artistic process so people can easier contribute / mod? You can pm me if you want.

Report message to a moderator

Private 1st Class
Re: Logical Bodytypes code added into the trunk (WIP)[message #359102 is a reply to message #359100] Thu, 27 February 2020 22:16 Go to previous messageGo to next message
Asdow is currently offline Asdow

 
Messages:126
Registered:August 2010
We are planning on remaking the animations so we'll have actually playable version of this. Help is always welcome, of course!

I updated the sprite rendering framework to work with blender 2.8, but Taro is working on an improved rigging for it so setting up animations is faster than with the current one. I think he also wanted to figure out if Eevee can be used for the rendering engine as it's a lot faster than Cycles. Once that's done, we can start the work on remaking the animations. There's a lot of animations that need to be recreated in blender and I'm not much of an animator, so I'm a little useless there.
Creating new sprites isn't terribly complex, most of the work needed is in making the animations. We have documentation about the older rendering setup, but it needs to be updated once the better setup is done.

Another thing is, the workflow could use automating some more. I made a simple batch script that can create working .sti files out of the frames output from the render setup, but defining the lines in the necessary .xml files was done manually when I was testing stuff and trying to get lobot to work. Bio's repo has some batch scripts to define the .xml data but IIRC they need updating to work with the lobot version we have in the trunk. His scripts are way over my current understanding of batch syntax so I've not been able to figure them out yet, either.

Report message to a moderator

Sergeant
Re: Logical Bodytypes code added into the trunk (WIP)[message #359177 is a reply to message #359102] Fri, 13 March 2020 18:50 Go to previous messageGo to next message
wanne (aka RoWa21) is currently offline wanne (aka RoWa21)

 
Messages:1961
Registered:October 2005
Location: Austria
Good work so far! Years ago I tried to get a working version of Bios code, but I missed some Xml files.

Report message to a moderator

Sergeant Major

Re: Logical Bodytypes code added into the trunk (WIP)[message #359298 is a reply to message #359177] Sun, 29 March 2020 17:33 Go to previous messageGo to next message
claustro is currently offline claustro
Messages:2
Registered:December 2018
Great to see this finally being worked on again! I tried to get into biolecter's code two years ago, but I never quite comprehended it.
So thanks Asdow, for having picked that up!

Report message to a moderator

Civilian
Re: Logical Bodytypes code added into the trunk (WIP)[message #359979 is a reply to message #359298] Sat, 09 May 2020 12:07 Go to previous messageGo to next message
Zaphod is currently offline Zaphod

 
Messages:18
Registered:April 2017
Location: Hessen Germany
This is a really great feature. Should this feature only work for playable merc's, or would that also be transferable to all npc's like opponents and civilians? With this feature, a much more harmonious atmosphere could be realized in the mods. Red shirts and blue shirts as a mark of who is an enemy or friend is boring in the long run. The possibility of having different headgear (e.g. Japanese cone hat or pashtun pakol) and helmet shapes visually represented by the NPCs would deepen the atmosphere of the game.

Thumps up for this freaky job.

[Updated on: Sat, 09 May 2020 12:12]

Report message to a moderator

Private
Re: Logical Bodytypes code added into the trunk (WIP)[message #360044 is a reply to message #359979] Sat, 16 May 2020 01:14 Go to previous messageGo to next message
Asdow is currently offline Asdow

 
Messages:126
Registered:August 2010
It can be used for anything that has animation surfaces, so playable mercs, enemies, civilians, tanks, cars etc. The replacement animation must have the same amount of frames as the underlying animation surface, and you'll have to make and render the animations and create the proper filters to the logic but there's little else in the way of doing whatever one's imagination comes up with.

I've been trying my hand at creating animations recently since we don't have too many animators on board. Here's a little sneak peek of my first attempts. The walking anim is all wonky and needs fixing, but for first attempts, the idle and crouching anims came out surprisingly good.

Report message to a moderator

Sergeant
Re: Logical Bodytypes code added into the trunk (WIP)[message #360422 is a reply to message #360044] Sun, 21 June 2020 21:44 Go to previous messageGo to next message
Asdow is currently offline Asdow

 
Messages:126
Registered:August 2010
Just a little update again. The rigging & rendering framework is now redone thanks to taro. Posing is a fair bit easier and the renderer was switched from cycles to eevee which shortened rendering times a lot. It's now also possible to render the basebody and up to 5 props in one go unlike with the old version so no more messing with the holdout and nodegraph muting. I've been working on animations this weekend and here's how it looks ingame at the moment.


The rendering framework is now on github, so if anyone wants to play around with it or work on making animations, feel free to do so. The documentation, and my tutorial is not up to date but it shouldn't be too hard to figure out, and you can always ask for help on the JA discord channel.
https://github.com/Asdow/JA2-Character-Animation-Photobooth

Report message to a moderator

Sergeant
Re: Logical Bodytypes code added into the trunk (WIP)[message #360424 is a reply to message #360422] Sun, 21 June 2020 23:20 Go to previous messageGo to next message
silversurfer

 
Messages:2793
Registered:May 2009
Looks better than the previous demo and doesn't have the moments of invisibility between animation changes. Good job. I assume, the invisibility when picking up stuff is because there is no animation for that yet?


Wildfire Maps Mod 6.07 on SVN: https://ja2svn.mooo.com/source/ja2/branches/Wanne/JA2%201.13%20Wildfire%206.06%20-%20Maps%20MOD

Report message to a moderator

Lieutenant
Re: Logical Bodytypes code added into the trunk (WIP)[message #360425 is a reply to message #360424] Sun, 21 June 2020 23:49 Go to previous messageGo to next message
Asdow is currently offline Asdow

 
Messages:126
Registered:August 2010
Yup, that's exactly it. If there's no animation defined for the lobot bodytype, nothing is drawn on the screen.

None of the animations from the old rig could be carried over so I had to remake the ones seen in the older demo. What you see in the newest video is all the animations I've managed to do so far, and some of them still need tweaking to look more natural. I also had to troubleshoot one of the blitting functions when the mercs are prone which is less than pleasant if you're at all familiar with the rendertiles function JA has.
There are still some kinks needing to be fixed, like missing muzzle flashes when shooting and the body and prop shadows overlaying on top of each other at some parts, which shows up as darker spots in the merc shadow if one looks closely. I'm determined to get this done and into the trunk even if it means I have to do all the animations myself. Hopefully that won't be the case though!

[Updated on: Sun, 21 June 2020 23:53]

Report message to a moderator

Sergeant
Re: Logical Bodytypes code added into the trunk (WIP)[message #360445 is a reply to message #360425] Wed, 24 June 2020 22:40 Go to previous messageGo to next message
wanne (aka RoWa21) is currently offline wanne (aka RoWa21)

 
Messages:1961
Registered:October 2005
Location: Austria
@Asdow: Good progress on that feature. The improved animations have very good quality👍

Report message to a moderator

Sergeant Major

Re: Logical Bodytypes code added into the trunk (WIP)[message #360941 is a reply to message #360445] Sat, 15 August 2020 06:46 Go to previous messageGo to next message
SinMachina is currently offline SinMachina

 
Messages:48
Registered:August 2020
I agree. I just commented to my wife that the sprites look like they are 10 years younger than what we have now. The detail jump is amazing.

Report message to a moderator

Corporal
Re: Logical Bodytypes code added into the trunk (WIP)[message #362260 is a reply to message #360941] Sat, 23 January 2021 16:15 Go to previous messageGo to next message
Asdow is currently offline Asdow

 
Messages:126
Registered:August 2010
Just a slight update to let you know this is still alive. I had a little setback because bio's intention in the code was to create new filters by combining existing ones in the Filters.xml file but the code does not work correctly. I haven't figured out exactly why it doesn't work, but worked around it for now and managed to do a quick test for dual wielding pistol/machine pistol combo.

Report message to a moderator

Sergeant
Re: Logical Bodytypes code added into the trunk (WIP)[message #362261 is a reply to message #362260] Sat, 23 January 2021 17:22 Go to previous messageGo to next message
ATigersClaw is currently offline ATigersClaw

 
Messages:209
Registered:October 2014
Awesome, I'm really looking forward to that!

Report message to a moderator

Sergeant 1st Class
Re: Logical Bodytypes code added into the trunk (WIP)[message #362262 is a reply to message #362261] Sat, 23 January 2021 20:35 Go to previous messageGo to next message
silversurfer

 
Messages:2793
Registered:May 2009
I always have a gunslinger in my team. That demo looks really nice. happy


Wildfire Maps Mod 6.07 on SVN: https://ja2svn.mooo.com/source/ja2/branches/Wanne/JA2%201.13%20Wildfire%206.06%20-%20Maps%20MOD

Report message to a moderator

Lieutenant
Re: Logical Bodytypes code added into the trunk (WIP)[message #362268 is a reply to message #359041] Tue, 26 January 2021 16:03 Go to previous messageGo to next message
Asdow is currently offline Asdow

 
Messages:126
Registered:August 2010
https://i.imgur.com/EW6BbbV.png

Report message to a moderator

Sergeant
Re: Logical Bodytypes code added into the trunk (WIP)[message #362275 is a reply to message #362268] Wed, 27 January 2021 06:24 Go to previous messageGo to next message
Hawkeye is currently online Hawkeye

 
Messages:2413
Registered:October 2005
Location: Australia
Looking good, keep up the good work.

Report message to a moderator

Lieutenant

Re: Logical Bodytypes code added into the trunk (WIP)[message #362278 is a reply to message #362268] Wed, 27 January 2021 23:18 Go to previous messageGo to next message
wanne (aka RoWa21) is currently offline wanne (aka RoWa21)

 
Messages:1961
Registered:October 2005
Location: Austria
Asdow wrote on Tue, 26 January 2021 14:03
https://i.imgur.com/EW6BbbV.png
Awesome job 👍

Report message to a moderator

Sergeant Major

Re: Logical Bodytypes code added into the trunk (WIP)[message #362427 is a reply to message #362278] Thu, 18 February 2021 18:18 Go to previous messageGo to next message
Asdow is currently offline Asdow

 
Messages:126
Registered:August 2010


Another update on this. The video showcases some of the animations that are done, and they are now in the trunk as of r8943 exe and r2582 gameDir. Not all the animations are done, but there are enough in my opinion, that anyone who wants to playtest LOBOT and find issues can do so.
The video is still processing HD version at the moment, so it might be a bit before it's clear.

These are the planned props so far. Anything with an x beside it is already rigged and renderable in the framework.
--- Assault rifles ---
x M16
x FAL
x AK47
x FAMAS
x Scar-H

--- SMG ---
x P90
x Thompson
x PPSH41
x MP5

--- Shotgun ---
x Mossberg
x Saiga 12k
x SPAS-12

--- Wooden Stock rifles ---
x Mosin nagant
x M14

--- Sniper Rifles ---
x Barrett M82
x Dragunov
x PSG-1
x Sako TRG-42
x Mossberg Patriot

--- LMG ---
x PKM
x Minimi
x RPK

--- Pistol & Machine pistol ---
x HK USP
x HK MP5K
x Desert Eagle
x S&W Model 500

--- Heavy weapons ---
RPG-7
Milkor MGL
M79
Mortar

--- Props ---
x Vest (needs proper rigging)
x Helmet
x Beret
x Booney hat
x Gasmask
x NVG
x Knife
x Radio
x crowbar
knee pads

Missing animations:
Merc in water
LAW & mortar anims
karate kick & punch
falling from roof
climbing down from roof
helidrop
swatting with knife
sidestep with rifle while aiming
rifle hip aim
pistol singlehanded aim & shoot
badass merc anims
kicking the cripple
jump window


Known issues:
Death animations lack blood spurts/head explosion
Knife not shown except in stabbing anims
Same thing for crowbar
Shooting low with rifle turns into pistol anims
Sidestep with pistol turns into rifle anims
No breathing animation in the collapsed anims
Some of the animations are quite "janky". I've had to learn as I go so the quality of anims is not the greatest.
Dark pixel artifacts in SCARH sprites in certain camera angles
Palette swap for AK type rifles that have black polymer stocks instead of wooden ones
Same for TRG42 and wooden stock sniper rifles
Could probably do the same for M14 sprites to emulate semiauto rifles with polymer stocks

[Updated on: Thu, 18 February 2021 18:27]

Report message to a moderator

Sergeant
Re: Logical Bodytypes code added into the trunk (WIP)[message #362445 is a reply to message #362427] Fri, 19 February 2021 18:12 Go to previous messageGo to next message
Szaruga is currently offline Szaruga

Messages:4
Registered:February 2021
Great job, I admire it because I know it is a tedious job.
Today playing and testing version 8943, I noticed that the new animations only work for "male-normal" characters.
What about "male-bodybuilding" and "female"? Can I hope you will do them too?



"When you see the truth triumph, ask what powerful lie was fighting for it."

Report message to a moderator

Civilian
Re: Logical Bodytypes code added into the trunk (WIP)[message #362446 is a reply to message #362445] Sat, 20 February 2021 00:31 Go to previous messageGo to next message
Asdow is currently offline Asdow

 
Messages:126
Registered:August 2010
Yeah, they're planned too and the rendering framework has models for them already. I've not done any sprites for them yet, because I wanted to get a full set done first for regular male, since after that it would be pretty much just a case of enabling the correct body, rendering all the animations, creating the sti files with the batch scripts we have and copy the xml definitions and search & replace RGM with BGM or FGM. Btw, the whole rendering and creating animation setup is up on github if you or anyone else wants to take a look at it. The link is in this post http://thepit.ja-galaxy-forum.com/index.php?t=msg&th=24337&goto=360422#msg_360422

[Updated on: Sat, 20 February 2021 04:14] by Moderator

Report message to a moderator

Sergeant
Re: Logical Bodytypes code added into the trunk (WIP)[message #362447 is a reply to message #362446] Sat, 20 February 2021 00:49 Go to previous messageGo to next message
Szaruga is currently offline Szaruga

Messages:4
Registered:February 2021
Great news. happy
I am trying to make a MOD based on the new 1.13, so such news motivates me to act.
Thank You and I wish you perseverance.

[Updated on: Sat, 20 February 2021 11:44]




"When you see the truth triumph, ask what powerful lie was fighting for it."

Report message to a moderator

Civilian
icon7.gif  Re: Logical Bodytypes code added into the trunk (WIP)[message #363300 is a reply to message #359041] Mon, 31 May 2021 13:07 Go to previous messageGo to next message
XJR CN is currently offline XJR CN
Messages:2
Registered:April 2017
I'm using the version 1.0 codes encoded by utf-8. I'm wondering whether there are any update of the code.By the way, any software can edit the animation? Maybe i can try to take a step on it.
There are no Rilfe_Aim_Sidestep codes and animation in version 1.0.

Report message to a moderator

Civilian
Re: Logical Bodytypes code added into the trunk (WIP)[message #363360 is a reply to message #359041] Fri, 11 June 2021 03:49 Go to previous messageGo to next message
Russkie is currently offline Russkie

 
Messages:7
Registered:November 2020
This is amazing work, thank you so much for giving us your time and effort in making such a great addition! I know that should this get finished it would revitalise the game in ways unimaginable! I think it would revive interest quite a bit. Thanks again for all your hard work

Report message to a moderator

Private
Re: Logical Bodytypes code added into the trunk (WIP)[message #363574 is a reply to message #363360] Sat, 07 August 2021 08:24 Go to previous messageGo to next message
Nixou is currently offline Nixou

 
Messages:56
Registered:January 2008
Location: France
Just discovered now. My god it's amazing!

Can't wait!

Report message to a moderator

Corporal
Re: Logical Bodytypes code added into the trunk (WIP)[message #363603 is a reply to message #363574] Wed, 18 August 2021 08:35 Go to previous messageGo to next message
Asdow is currently offline Asdow

 
Messages:126
Registered:August 2010
https://i.imgur.com/hloAYod.jpg

Still alive, another update got pushed into GameDir today. happy

For regular male, we're missing following animations, and then it's time to move on to the other bodies.
RGMHITHARDBLOOD
RGMDIE_JFK
RGMWATER_R_WALK
RGMWATER_R_STD
RGMWATER_N_WALK
RGMWATER_N_STD
RGMWATER_DIE
RGMWATER_N_AIM
RGMWATER_R_AIM
RGMWATER_DBLSHT
RGMWATER_TRANS
RGMDEEPWATER_TRED
RGMDEEPWATER_SWIM
RGMDEEPWATER_DIE
RGMHELIDROP
RGMMORTAR
RGMSIDESTEP_CROUCH_R_RDY
RGMSIDESTEP_CROUCH_P_RDY
RGMSIDESTEP_CROUCH_D_RDY
RGM_WATER_HIP_AIM

Report message to a moderator

Sergeant
Re: Logical Bodytypes code added into the trunk (WIP)[message #363613 is a reply to message #363603] Mon, 23 August 2021 15:44 Go to previous messageGo to next message
Asdow is currently offline Asdow

 
Messages:126
Registered:August 2010
https://i.imgur.com/rbbLuXu.png

Another GameDir update went through, this time with most of the bigmale anims.

Known issues:
Badass merc sidestep with rifle not working yet, needs a proper filter.
Same for badass merc sidestep with pistol

Report message to a moderator

Sergeant
Re: Logical Bodytypes code added into the trunk (WIP)[message #363631 is a reply to message #363613] Thu, 26 August 2021 23:34 Go to previous messageGo to next message
Asdow is currently offline Asdow

 
Messages:126
Registered:August 2010

Report message to a moderator

Sergeant
icon14.gif  Re: Logical Bodytypes code added into the trunk (WIP)[message #363639 is a reply to message #363631] Mon, 30 August 2021 23:28 Go to previous messageGo to next message
wanne (aka RoWa21) is currently offline wanne (aka RoWa21)

 
Messages:1961
Registered:October 2005
Location: Austria
Wow, awesome work Asdow. Looks amazing!

[Updated on: Mon, 30 August 2021 23:30]

Report message to a moderator

Sergeant Major

Re: Logical Bodytypes code added into the trunk (WIP)[message #363642 is a reply to message #363639] Tue, 31 August 2021 18:27 Go to previous messageGo to next message
marianosi is currently offline marianosi
Messages:1
Registered:August 2021
Hey guys, I must say that Asdow made an excellent mod that takes the pleasure from playing JA2 to its peak, however I also have a little question, how can manually update the mod version. I own a JA 1.13 with a previous version of the mod. I've downloaded the photobooth master, however I dont really know how to apply the update angry. Any clues?

Cheers.

Report message to a moderator

Civilian
Re: Logical Bodytypes code added into the trunk (WIP)[message #363645 is a reply to message #363642] Tue, 31 August 2021 19:34 Go to previous messageGo to next message
Asdow is currently offline Asdow

 
Messages:126
Registered:August 2010
Nono, the github link is only for people who want to create new animations or render new props. To be able to play with these animations, just follow the latest v1.13 directions in this message: https://thepit.ja-galaxy-forum.com/index.php?t=msg&th=24648&goto=361643#msg_361643

Then ingame, there is an option Logical Bodytypes (WIP) that you need to enable for them to show.

[Updated on: Wed, 01 September 2021 04:46] by Moderator

Report message to a moderator

Sergeant
Re: Logical Bodytypes code added into the trunk (WIP)[message #363666 is a reply to message #363645] Mon, 06 September 2021 08:45 Go to previous messageGo to next message
Asdow is currently offline Asdow

 
Messages:126
Registered:August 2010
https://i.imgur.com/mPhwY9R.jpg

Folks, say hello to our brand new ladies!

Their anims are in the GameDir as of r2617 and now all three merc bodytypes are more or less at equal progress.

Report message to a moderator

Sergeant
Re: Logical Bodytypes code added into the trunk (WIP)[message #363676 is a reply to message #363666] Tue, 14 September 2021 14:09 Go to previous messageGo to next message
Inveris is currently offline Inveris

 
Messages:32
Registered:September 2020
Will the enemies also use these new animations? Or will there be an option or xml config, where we could dress them in a military appropriate way?

Report message to a moderator

Private 1st Class
Re: Logical Bodytypes code added into the trunk (WIP)[message #363677 is a reply to message #363676] Tue, 14 September 2021 14:27 Go to previous messageGo to next message
Asdow is currently offline Asdow

 
Messages:126
Registered:August 2010
The main filters are currently based on BODYTYPE, so yes, enemies will also use logical bodytypes if it's enabled. If you want it to be different or want to create a specific kind of setup for enemies, you can do it through the filters and bodytypes' xml files. See first post and bio's posts for explanation on the files.

Report message to a moderator

Sergeant
Re: Logical Bodytypes code added into the trunk (WIP)[message #363710 is a reply to message #363677] Mon, 20 September 2021 20:14 Go to previous messageGo to next message
Uriens is currently offline Uriens

 
Messages:346
Registered:July 2006
This is like watching a miracle coming through. I have more hopes in this then in JA3 that has been announced. Thank you for doing this.

Report message to a moderator

Master Sergeant
Re: Logical Bodytypes code added into the trunk (WIP)[message #363729 is a reply to message #363603] Thu, 23 September 2021 05:35 Go to previous messageGo to next message
XJR CN is currently offline XJR CN
Messages:2
Registered:April 2017
Amazing!!!
You make my game alive!! thumbs up thumbs up

Report message to a moderator

Civilian
Re: Logical Bodytypes code added into the trunk (WIP)[message #363955 is a reply to message #362278] Sat, 06 November 2021 08:08 Go to previous messageGo to next message
luk3Z is currently offline luk3Z

 
Messages:68
Registered:December 2006
Location: Metavira
wanne (aka RoWa21) wrote on Wed, 27 January 2021 22:18
(...)
Awesome job 👍
Agree. thumbs up



JA2 Vault (Repositories): https://pastebin.com/MJFckiaq
JA2 v1.13 - Starter Documentation: https://github.com/aimnas/1.13_starter_documentation
JA2 1.13 Hot Keys: https://pastebin.com/EHLMuk1k

Report message to a moderator

Corporal
Re: Logical Bodytypes code added into the trunk (WIP)[message #364110 is a reply to message #363955] Fri, 31 December 2021 10:54 Go to previous messageGo to next message
Asdow is currently offline Asdow

 
Messages:126
Registered:August 2010
https://i.imgur.com/LG4KV9q.jpg

A full set of animations for all three bodytypes just got committed to GameDir! I now consider this no longer WIP state since the game is now playable completely with logical bodytypes enabled.
If you find any bugs or issues, please start a new issue here, with as much detail about it as you can: https://github.com/Asdow/JA2-Character-Animation-Photobooth/issues



Next up on the agenda is improving the rendering framework documentation so others can contribute to JA 2 animations and create new equipment graphics or bodytypes for the game. After that I'm gonna take a long needed break from rendering animations.


Here's to a good year everybody! Buddies

Report message to a moderator

Sergeant
Re: Logical Bodytypes code added into the trunk (WIP)[message #364112 is a reply to message #364110] Sat, 01 January 2022 04:26 Go to previous messageGo to next message
Hawkeye is currently online Hawkeye

 
Messages:2413
Registered:October 2005
Location: Australia
https://static.displate.com/280x392/displate/2019-01-27/fd37990d79595ba21711586a7ee14d5e_0238f1690641069a5e1e5d3daeb2565b.jpg

It was talked about for years, but congratulations for actually getting the job done. Bravo.

Report message to a moderator

Lieutenant

Re: Logical Bodytypes code added into the trunk (WIP)[message #364116 is a reply to message #364112] Sat, 01 January 2022 16:23 Go to previous messageGo to previous message
az75 is currently offline az75

 
Messages:177
Registered:June 2012
Location: Romania
Awesome job!
Congrats!

Report message to a moderator

Staff Sergeant
Previous Topic: Variable camo body usable area
Next Topic: backgrounds overhaul planned
Goto Forum:
  


Current Time: Fri Mar 29 07:46:05 GMT+2 2024

Total time taken to generate the page: 0.02247 seconds