Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
LittlePsycho

Hexen scripting HELP!

Recommended Posts

Hi,
I just joined the doomworld community, so I don't know if this is the right forum but I've got a problem

I try to make some scripts in my own hexen map. The scripts are working if I start my wad with zdoom, but they don't work with the original exe or doomsday etc.
Zdoom isn't bad, but I want to play my map with doomsday(because of the good graphics, 3d monsters...)
Is there a possibilty to make the scripts working in doomsday? Or is there maybe something like zdoom, with better graphics?

Share this post


Link to post

GZDoom is based on ZDoom and can use its scripts, and has the ability to handle models, dynamic lighting, texture filtering etc.

Share this post


Link to post

You need to use the -h argument if compiling the script with ZDoom's ACC (if you're not compiling ACS directly yourself, but use something like DB2, looks in the configuration options if you can provide additional parameters to the ACS compiler). That way, it'll write the behavior lump in the old ACS format which is compatible with the original Hexen specs and thus should work in Doomsday jHexen. Note, however, that if you used ZDoom-exclusive ACS functions, it will still not work in Doomsday as the corresponding P-codes will not be found.

Share this post


Link to post
Gez said:

You need to use the -h argument if compiling the script with ZDoom's ACC (if you're not compiling ACS directly yourself, but use something like DB2, looks in the configuration options if you can provide additional parameters to the ACS compiler). That way, it'll write the behavior lump in the old ACS format which is compatible with the original Hexen specs and thus should work in Doomsday jHexen. Note, however, that if you used ZDoom-exclusive ACS functions, it will still not work in Doomsday as the corresponding P-codes will not be found.


So you can use scripts in Doomsday, but not all? Can you give me some examples please? :D

Share this post


Link to post
LittlePsycho said:

So you can use scripts in Doomsday, but not all? Can you give me some examples please? :D

Well, ZDoom added a lot of functions to ACS. Since there's no well-known and thorough Hexen ACS documentation, people are directed to the ZDoom wiki, which doesn't discriminate between original ACS functions and new ACS functions.

Here's from the Hexen source code the list of ACS P-codes. These are their names within Hexen itself, not the names you actually use in a script (for example, Thing_Count is listed here as CmdThingCount), and it doesn't include only the functions. Nonetheless, you should be able to use this list to determine whether a p-code is ZDoom-exclusive or not.

	CmdNOP,
	CmdTerminate,
	CmdSuspend,
	CmdPushNumber,
	CmdLSpec1,
	CmdLSpec2,
	CmdLSpec3,
	CmdLSpec4,
	CmdLSpec5,
	CmdLSpec1Direct,
	CmdLSpec2Direct,
	CmdLSpec3Direct,
	CmdLSpec4Direct,
	CmdLSpec5Direct,
	CmdAdd,
	CmdSubtract,
	CmdMultiply,
	CmdDivide,
	CmdModulus,
	CmdEQ,
	CmdNE,
	CmdLT,
	CmdGT,
	CmdLE,
	CmdGE,
	CmdAssignScriptVar,
	CmdAssignMapVar,
	CmdAssignWorldVar,
	CmdPushScriptVar,
	CmdPushMapVar,
	CmdPushWorldVar,
	CmdAddScriptVar,
	CmdAddMapVar,
	CmdAddWorldVar,
	CmdSubScriptVar,
	CmdSubMapVar,
	CmdSubWorldVar,
	CmdMulScriptVar,
	CmdMulMapVar,
	CmdMulWorldVar,
	CmdDivScriptVar,
	CmdDivMapVar,
	CmdDivWorldVar,
	CmdModScriptVar,
	CmdModMapVar,
	CmdModWorldVar,
	CmdIncScriptVar,
	CmdIncMapVar,
	CmdIncWorldVar,
	CmdDecScriptVar,
	CmdDecMapVar,
	CmdDecWorldVar,
	CmdGoto,
	CmdIfGoto,
	CmdDrop,
	CmdDelay,
	CmdDelayDirect,
	CmdRandom,
	CmdRandomDirect,
	CmdThingCount,
	CmdThingCountDirect,
	CmdTagWait,
	CmdTagWaitDirect,
	CmdPolyWait,
	CmdPolyWaitDirect,
	CmdChangeFloor,
	CmdChangeFloorDirect,
	CmdChangeCeiling,
	CmdChangeCeilingDirect,
	CmdRestart,
	CmdAndLogical,
	CmdOrLogical,
	CmdAndBitwise,
	CmdOrBitwise,
	CmdEorBitwise,
	CmdNegateLogical,
	CmdLShift,
	CmdRShift,
	CmdUnaryMinus,
	CmdIfNotGoto,
	CmdLineSide,
	CmdScriptWait,
	CmdScriptWaitDirect,
	CmdClearLineSpecial,
	CmdCaseGoto,
	CmdBeginPrint,
	CmdEndPrint,
	CmdPrintString,
	CmdPrintNumber,
	CmdPrintCharacter,
	CmdPlayerCount,
	CmdGameType,
	CmdGameSkill,
	CmdTimer,
	CmdSectorSound,
	CmdAmbientSound,
	CmdSoundSequence,
	CmdSetLineTexture,
	CmdSetLineBlocking,
	CmdSetLineSpecial,
	CmdThingSound,
	CmdEndPrintBold

Share this post


Link to post
LittlePsycho said:

Mhhh I see...
so I never will be able to use localsetmusic or setactorproperty with doomsday for exmaple?

Yup, those are ZDoom extensions to ACS.

Share this post


Link to post
Gez said:

Since there's no well-known and thorough Hexen ACS documentation

There's the official Hexen specs and the ZDoom 1.22 documentation. From the latter, exclude the ACS specials by your common sense.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×