Page 1 of 2

[solved] Help!!!

Posted: Tue Nov 21, 2006 16:09
by Jive
I need to go from E2M8 to E3M1 directly without having to use the general menu.
With "next e3m1" in the mapinfo for E2M8, it's easy.
But I keep all my inventory and I want to begin from scratch.

Impossible to find any information about it.
The wiki is horribly badly documented. They don't really explain anything.
There is the command "skeep_all", but I don't understand how to use it, and where. :oops:

Posted: Tue Nov 21, 2006 16:18
by Graf Zahl
From inside the game the only means is to do it by script.

Posted: Tue Nov 21, 2006 18:18
by Jive
It was my own conclusion, but some commands (like skip_all) made me think that, perhaps, another way to do it was already existing.
There is "keepinventory", but there is no "skeepinventory"... :(

Thank you Graf !

Posted: Wed Nov 22, 2006 0:12
by Jive
a script in E3M1 activated by a linedef tagged 22, for the purpose to reset to zero the inventory:

Code: Select all

#include "zcommon.acs"

script 22 open
{
command ("idclev 31");
}
don't work. What is wrong ?!?
Yes, I know: I'm a nerd :oops:

Posted: Wed Nov 22, 2006 0:27
by Graf Zahl
First, there is no ACS command to do cheats or console commands.
Second, even if it existed it had to be 'command("map e3m1")

There's an easier way by using the ChangeLevel ACS command. That one allows resetting the inventory to the default.

Posted: Wed Nov 22, 2006 14:00
by Jive
thank you a lot, Graf !!!

Unfortunately, I fail to make it working:

Code: Select all

#include "common.acs"

// Scripts:
script 22 (VOID)
{
ChangeLevel (" King Arena", 31, "RESETINVENTORY", 4);
}
I receive on the screen a message telling me:
P_STARTSCRIPT
UNKNOWN SCRIPT 22

Nothing is explained of the wiki's page. :oops:

Posted: Sun Nov 26, 2006 2:21
by Jive
This new feature (ChangeLevel ) was added to Zdoom v2.15
Are you sure that it's Gzdoom available?

I can't try it nor with Zdoom nor with ZdoomGl, because my script is containing "interpic Doom"

Posted: Sun Nov 26, 2006 2:39
by Syfo-Dyas
I agree with the wiki, it is hard to make sence of till you know what your trying to learn it seems...

...irony.

Posted: Sun Nov 26, 2006 5:06
by Jive
I am new with ACS, and wiki is NOT made for newbies!!!
Must I tell that I was with Hurdler when he was implementing Fragglescript on Doom Legacy and that we made RainBowStar.wad in a hurry for the only purpose to test the scripting feature and to show some of the Doom Legacy's engine capacities?!?
This to let you understand that I'm not really a newbie...

Wiki is really very badly explained. I should say: most of the time without any explanation, like it was the case for "ChangeLevel".
The explanation (the example, in fact) for "ChangeLevel" was made by me... Of course, if you look at it, you will understand that it's wrong, but I'm waiting a debug to make it more accurate and true.

I am a contributor, when I can do it, to the wiki thingy :twisted:

So, I am a bit upset when I read what I read on the forums, here and there. If we have to be gods with ALL the knowledge contained in the wiki and the forums, and to understand AND to know immediately how to use what is given on it, I should go away and stay far from it.

I thought that the fact to be friendly was the most important thing to do on a forum, instead of claiming that YOU know (not you, my friend, ok?) how to do something and that the poor guy asking some help MUST figure it himself... and ALONE. (it's a pure personnal experience of what I already saw everythere on the forums).

For my part, when I know something, my pleasure is to share my knowledge... It's why I made 3 sites on the net, and for NOTHING else.

Posted: Sun Nov 26, 2006 13:03
by Jive
Gzdoom is bugged ? :(

If no: can you give me the correction to make on my script?

Please!!! :cry:

If I try to compile it, I obtain this warning:

Code: Select all

Line 6 in file "script.acs" ...
 script.acs:6: Function changelevel is used but not defined.
 
 The ACS compiler did not compile your script.
I think that I have tried every possible change to the script, the way to write it and to use it. And still no good result.
I am using DoomBuilder. On the field "Map number" for the linedef, when I put "31" (for e3m1), I don't have anymore a warning about an unknown script, but nothing is happening, like if there was no script. And I don't know if I have to write something on the fields "Arguments", and what.

My buddies are telling me that it SHOULD work. One of them told me that it was working with Zdoom, but none is able to understand what is happening.

Posted: Fri Dec 01, 2006 14:02
by Osiris
I think I may know what's wrong. Have you updated your ACS compiler for whatever program you are using? Just to clarify what I mean, if you are using Doom Builder to compile the scripts, you may have an older version of the ACS compiler named ACC.exe. In case you don't know where to find the updated version, here is the link: http://www.zdoom.org/files/utils/acc/acc145win.zip
In the zip file are four files. Just copy them into the Doom Builder directory and retry compiling the script with Doom Builder. That is if you are using Doom Builder.

Posted: Mon Dec 04, 2006 3:58
by Jive
you were right!!!
Doing what you said was efficient enough to let me compile the script.
I was quite happy, until I discovered that, in fact, the map was ended like if I had reached the exit (the screen "endmission" is displayed). Ok, it's possible to accept it.
Then, I received the message: "No start Player 1", or something like that, then the game stopped.

Anyway, I'm on the good way, thanks to your precious help.
Thank you a lot!!!

Message for Gruber: can you help me, please?

Posted: Tue Dec 05, 2006 15:32
by Jive
The answer from Gruber:

When this script is activated, the player is sent to MAP01 (without intermission), his inventory is reset to default and the skill is set to normal (hurt me plenty).

Code: Select all

#include "zcommon.acs"

script 22 (VOID)
{
  ChangeLevel ("MAP01", 1, CHANGLELEVEL_RESETINVENTORY|CHANGELEVEL_NOINTERMISSION, SKILL_NORMAL);
}
What I still don't understand is that, if I adapt the script for Doom1, I'm bumped out with the warning: "No player 1 start", which makes me think that it's not available for Doom1:

Code: Select all

#include "zcommon.acs"

script 22 (VOID)
{
  ChangeLevel (" King Arena", 31, CHANGLELEVEL_RESETINVENTORY|CHANGELEVEL_NOINTERMISSION, SKILL_HARD);
}

Posted: Tue Dec 05, 2006 15:49
by Graf Zahl
You did it wrong.

First, level name means the level lumo, i.e. "E1M1".
Second, the position refers to the number you assign to the player 1 start position. Unless there are multiple starts this should always be 0.

The strange error comes because the level name is never checked properly.

Posted: Tue Dec 05, 2006 20:39
by Boingo the Clown
If I recall, fraggle script has a command that allows the player to keep his inventory. GZDooM understands fraggle, so this command should work.