Fallout 2 mod FO2 Engine Tweaks (Sfall)

Discussion in 'Fallout General Modding' started by Dude101, Jul 30, 2007.

  1. Timeslip

    Timeslip Water Chip? Been There, Done That
    Modder

    921
    Aug 15, 2007
    I can't replicate this with my extra traits mod. If I click cancel, the fake perk is always removed correctly. Would you mind pming me the script you're using? It's more likely to be an sfall bug than a problem with your script, but if so it looks like it requires some specific layout of real/fake perks to trigger...

    Edit: 1.44a is (partially) up. I wasn't intending to release it just yet, but I don't seem to be working on sfall very much recently, and I might as well release what I have. It now lets you set custom death animations via a couple of new hook scripts.

    Code:
    hs_deathanim1.int
    
    Runs before fallout tries to calculate the death animation. Lets you switch out which weapon fallout sees
    
    item    arg1 - The weapon performing the attack. (May be zero if the attack is unarmed)
    critter arg2 - The attacker
    critter arg3 - The target
    int     arg4 - The amount of damage
    
    int     ret1 - The pid of an object to override the attacking weapon with
    
    -------------------------------------------
    
    hs_deathanim2.int
    
    Runs after fallout has calculated the death animation. Lets you set your own custom frame id, so more powerful than hs_deathanim1, but performs no validation.
    
    item    arg1 - The weapon performing the attack. (May be zero if the attack is unarmed)
    critter arg2 - The attacker
    critter arg3 - The target
    int     arg4 - The amount of damage
    int     arg5 - The frame id calculated by fallout
    
    int     ret1 - Override the frame id.
    
    And an example of a hs_deathanim1 script that causes everyone to burn horribly to death:

    Code:
    procedure start;
    
    procedure start begin
    	if(init_hook) then begin
    	end else begin
    		set_sfall_return(11); //pid for the flamer
    	end
    end
    
    Edit2: That little bit of the readme isn't final, which is why it's not included in the download yet: Firstly, scripts tend to expect item references to be ids rather than a memory pointer, so trying to do anything with the weapon argument may not work. I'll probably swap that out to give the pid instead. Secondly I'm not entirally sure that the death anims are frame ids; if they are, they're just the list offset (ie the last 3 digits of the id,) and not the whole thing.

    Edit the third: Just a quick reminder, can anyone making new feature requests please add them to the modding wiki, so that they don't get lost somewhere in the middle of this thread never to be seen again. It helps a lot with my memory. :P
     
  2. Mr.Wolna

    Mr.Wolna Vault Senior Citizen

    Nov 15, 2007
    FUCK! :crazy: :crazy: :crazy:

    You genius NOW i can build my Metzger Head Blow away Dead correct into the game.





    Thanks for this one little buity man!
     
  3. brother_soifran

    brother_soifran Look, Ma! Two Heads!

    396
    Oct 14, 2008
    there is an earthquake when metzerg dies ?
    :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen:

    Ok I go out ;)

    Brother
     
  4. brother_soifran

    brother_soifran Look, Ma! Two Heads!

    396
    Oct 14, 2008
    re.
    I've finished to translate SFALL 1.43 in french ;)
    Can you take care of it and made french version?
    Only put my ddraw.ini I think in your french version.

    There is 1 points I haven't understand to translate:
    What is"shiv" in:
    hardcoded shiv item type

    thanks.

    Brother Soifran
     
  5. x'il

    x'il Water Chip? Been There, Done That

    980
    Mar 3, 2009
    Nice!!... i sense new death animations in the air. :)

    shiv (shv)
    n. Slang
    A knife, razor, or other sharp or pointed implement, especially one used as a weapon.

    In the game, is this small homemade "knife" thingy that looks like a screwdriver, is completely useless and doesn't work.
     
  6. brother_soifran

    brother_soifran Look, Ma! Two Heads!

    396
    Oct 14, 2008
    Ha ok thanks.
    I go to correct.
    Bye

    Brother Soifran
     
  7. Mr.Wolna

    Mr.Wolna Vault Senior Citizen

    Nov 15, 2007
    sry but why you need to tranlate sfall? ^^
     
  8. brother_soifran

    brother_soifran Look, Ma! Two Heads!

    396
    Oct 14, 2008
    to share it to my guys in France and don't need to make boring tutorials ;)
    and why not to make some tuto with pic to explain the different command.
    why not..


    Brother Soifran
     
  9. Nirran

    Nirran Vault Senior Citizen
    Modder

    Apr 15, 2007
    done and done,awesome mod timeslip

    Nirran
     
  10. brother_soifran

    brother_soifran Look, Ma! Two Heads!

    396
    Oct 14, 2008
    Gronichonha.
    I reading the whole topic (it's long) to find some answer to my troubleshooting.
    It looks like if some functions work and other not.
    I've install the small global.fx in the data\shaders
    set to 4 the graphic mode for dx9 in full windows.
    set to 3 for always shaders.

    But the result is strange.
    My mouse moves slowly, the game works, but there is no smoothing of the graphics...
    Just a slower game...
    I'll keep on my reading to see if it's somewhere, but if not, some knows what can it be?

    Edit:

    Another question...
    Is it possible to imagine to use layers ?
    I'm explain.
    Have a generic animation in FRM, for example, a critter holding a shotgun, but !!! without the shotgun, with empty hands.
    We 'ld have all the standards animation code. AA, AB...AQ etc

    And in other part, a serials of FRM for the shotgun, with is proper skin which can be overlay in game on the empty animation.

    Understand what I say?
    the interest may be to calculate and render only the position of a new skin of weapon and aplly it to the associated animation of the critter in game.
    Like that, I think that guys like me, or X'il, or Josan, Mr Wolna, or Demon etc... who modify critter can win a lot of time.
    We would only rebuild naked animation of the critters and apply layer of what we want.

    I don't know if it's possible and how work it represent.
    Schuus

    Brother Soifran
     
  11. Timeslip

    Timeslip Water Chip? Been There, Done That
    Modder

    921
    Aug 15, 2007
    1.44b is up. It fixes a crash bug in the death anim hook scripts, changes the first argument to the hook scripts to be the pid of the weapon, fixes Nirran's issue with fake perks, and adds a new option to highlight all items on the ground. (I could have sworn you could already do that... Must have been thinking of baldur's gate again.)

    As I suspected, the death animations aren't returned as frame id's, but rather a code for the required death anim that gets combined with the critter later on to construct the full id. It shouldn't make much difference, but it does help to know what you're supposed to be returning. :P

    Are you using the high res patch? I would recommend against combining very high resolutions with sfall's dx9 mode, or you'll have time to go cook yourself a burger between each frame.

    As to why the shader isn't working, if you're using an upscaling shader, (I assume that's why you're expecting it to be smoothed?) then sfall's resolution needs to be at least 2x fallout's internal resolution, whether that's the default 640x480, or anything else you've set with the res patch. I'd suggest replacing the shader with something that just paints the whole screen red first, to check that it's working.

    No.
     
  12. Continuum

    Continuum Vault Fossil

    Nov 8, 2006
     
  13. Mr.Wolna

    Mr.Wolna Vault Senior Citizen

    Nov 15, 2007
    hey Timeslip is it possible to make the roofs tramsparent like in Fonline? That will be very amazing.
     
  14. Nirran

    Nirran Vault Senior Citizen
    Modder

    Apr 15, 2007
    thanks much man
     
  15. Lexx

    Lexx Testament to the ghoul lifespan
    Moderator Modder

    Apr 24, 2005
    Actually it looks not good all the time. We changed it for our game back to non transparent roofs.


    Trying to remove tile size limit is really the way to go.
     
  16. Mr.Wolna

    Mr.Wolna Vault Senior Citizen

    Nov 15, 2007
    True? I thouth it will look good. What is the problem with that?

    Ok and whats about the new (i think smoother) night and day system and the lights? This one i really liked too in Fonline.


    btw what is this time size limit?
     
  17. Continuum

    Continuum Vault Fossil

    Nov 8, 2006
    :D

    Not time, but tile :P Answer you'll find in my previous post in this thread.
     
  18. Mr.Wolna

    Mr.Wolna Vault Senior Citizen

    Nov 15, 2007
    hey you right that will be nice also. and easier for the future.


    edit: Hey gyus wahts about bigger maps? Like in Fonlie. for e.x. a Den which only ONE MAP. Or is this impossible with the same engine, and cannot be done with sfall?
     
  19. Josan12

    Josan12 Vault Senior Citizen

    Oct 15, 2007
    So, errr - what does this mean exactly? :oops: Does it mean i can set a particular weapon to cause a particular death animation?? If so - AWESOME!!

    Otherwise :(
     
  20. Timeslip

    Timeslip Water Chip? Been There, Done That
    Modder

    921
    Aug 15, 2007
    Oddly enough, I came across the hardcoded map size limits when I was looking for the tile size limits. I haven't tried changing them yet though, because I strongly suspect that if I do it will trash existing savegames, and it would require all maps to be the new size, so every single map would need to be modified.

    Of course. To add a bit to the example script I already posted:

    An hs_deathanim1.ssl script that will cause the 10mm pistol to cause the same death animations as the flame thrower.
    Code:
    procedure start;
    procedure start begin
    	if(init_hook) then begin
    	end else begin
    		if(get_sfall_arg == PID_10MM_PISTOL) set_sfall_return(PID_FLAMER);
    	end
    end
    
    An hs_deathanim2.ssl script that will make the 10mm pistol always cause the most violent fire death, regardless of damage done.
    Code:
    procedure start;
    procedure start begin
    	if(init_hook) then begin
    	end else begin
    		if(get_sfall_arg == PID_10MM_PISTOL) set_sfall_return(33);
    	end
    end