delete duplicate timer entries
Moderator: Zyx
Forum rules
Please read the Forum rules and policies before posting.
Please read the Forum rules and policies before posting.
delete duplicate timer entries
A message in CSbuild options: "one word entry: non-zero causes duplicate timer entries to be discarded (the original game did this). Zero causes all timer messages to be delivered (more intuitive IMHO)".
Beo wrote: "it's to do with multiple trigger activations goign to the same place"
does it mean that when an actuator gets two messages in the same time (one tick = about 1/6th of second) from different sources - for example a counter gets two clear messages at the same time - actuator won`t recieve one of them?
what do I have to enter to change it from state 0 to non-zero? 32bit number? When I enter low number, I get "bad numeric data", when high, CSBuild crashes.
Beo wrote: "it's to do with multiple trigger activations goign to the same place"
does it mean that when an actuator gets two messages in the same time (one tick = about 1/6th of second) from different sources - for example a counter gets two clear messages at the same time - actuator won`t recieve one of them?
what do I have to enter to change it from state 0 to non-zero? 32bit number? When I enter low number, I get "bad numeric data", when high, CSBuild crashes.
Spoiler
(\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/)
Spoiler
(@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@)
Spoiler
(>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<)
- Paul Stevens
- CSBwin Guru
- Posts: 4318
- Joined: Sun Apr 08, 2001 6:00 pm
- Location: Madison, Wisconsin, USA
I put a 20-digit number in there and nothingwhen high, CSBuild crashes.
crashed. So can you tell me exactly what
you did to make it crash?
To change it to non-zero you put '1' in the
record size (as specified in the instructions,
any larger record simply wastes space)
then you put a non-zero value in the first
word of data. Then you 'Write' the record.
I put a '1' in the data......that is non-zero
enough for me. Any other number will be entered
modulo 4294967296, I think.
- Paul Stevens
- CSBwin Guru
- Posts: 4318
- Joined: Sun Apr 08, 2001 6:00 pm
- Location: Madison, Wisconsin, USA
In the original FTL code:
If two identical timer entries target the
same cell of the dungeon at the same time then
only one is delivered. You can try this by
putting two toggles under a pressure pad
directed at a single door. The door's state will
change using the original code.
Disabling this
feature will cause BOTH toggles to be delivered
and the door will not open or close.
If two identical timer entries target the
same cell of the dungeon at the same time then
only one is delivered. You can try this by
putting two toggles under a pressure pad
directed at a single door. The door's state will
change using the original code.
Disabling this
feature will cause BOTH toggles to be delivered
and the door will not open or close.
ok, it crashes only when you enter very high number in a "size-32 bit words" field without filling one of "hex data" fields and press "write record". With numbers 1 and 1 everything works fine.
I assume that the editor is originally set to deliver ALL the messages to the actuator. So I don`t need to change it then. I don`t like the way it was originally done.
But then I`ve got the problem: if you make, say, 20 pressure pads with monsters staying on them (each sending "clear" message once only when monster steps off), leading to the counter with value= 20 [if counter is zero (is disabled) send message wchich opens a door etc], it won`t work properly. I mean the counter won`t recieve 20 "clear" messages. Maybe 10. I though it happens when two (or more) monsters steps off two pressure pads at the same time (= counter gets 2 (or more) messages at the same time), but editing database doesn`t help here - a counter still doesn`t recieve all messages.
I assume that the editor is originally set to deliver ALL the messages to the actuator. So I don`t need to change it then. I don`t like the way it was originally done.
But then I`ve got the problem: if you make, say, 20 pressure pads with monsters staying on them (each sending "clear" message once only when monster steps off), leading to the counter with value= 20 [if counter is zero (is disabled) send message wchich opens a door etc], it won`t work properly. I mean the counter won`t recieve 20 "clear" messages. Maybe 10. I though it happens when two (or more) monsters steps off two pressure pads at the same time (= counter gets 2 (or more) messages at the same time), but editing database doesn`t help here - a counter still doesn`t recieve all messages.
Spoiler
(\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/)
Spoiler
(@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@)
Spoiler
(>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<)
I sent you email with a micro dungeon showing that problem; if you run it, then save the game you`ll see that only 2/3 of messages were recieved by a counter no matter of the database settings.
Spoiler
(\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/)
Spoiler
(@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@)
Spoiler
(>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<)
- Paul Stevens
- CSBwin Guru
- Posts: 4318
- Joined: Sun Apr 08, 2001 6:00 pm
- Location: Madison, Wisconsin, USA
strange. On my machine, when I enter that mini-dungeon, door never opens, even though it should open after a second(s). I tried about 30-40 times. When I save the game (after huge amount of time) and check a counter in csbgame.dat, the counter initial value is always about 40 (39-44). So it seems that a counter doesn`t recieve about 2/3 messages.
Here`s how it looks like: while all 54 pads are being used (=disabled), counter still shows value ~40. I can send you my csbgame.dat file with that.
Is it my computer executes abnormal functions?
Here`s how it looks like: while all 54 pads are being used (=disabled), counter still shows value ~40. I can send you my csbgame.dat file with that.
Is it my computer executes abnormal functions?
Spoiler
(\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/)
Spoiler
(@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@)
Spoiler
(>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<)
- Paul Stevens
- CSBwin Guru
- Posts: 4318
- Joined: Sun Apr 08, 2001 6:00 pm
- Location: Madison, Wisconsin, USA
I received your CSBGAME2.DAT.
to enable all messages to be delivered. Maybe you should
try editing it to allow all timer messages to be delivered and
then, if it still does not work for you, send me THAT savegame.
In the game you sent me you have not edited the databasebut editing database doesn`t help here - a counter still doesn`t recieve all messages
to enable all messages to be delivered. Maybe you should
try editing it to allow all timer messages to be delivered and
then, if it still does not work for you, send me THAT savegame.
[deleted]
Last edited by Adamo on Sun Nov 05, 2006 1:30 pm, edited 1 time in total.
Spoiler
(\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/)
Spoiler
(@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@)
Spoiler
(>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<)
whoops!!!
I edited the database in a wrong way!!!!!
Now everything works just fine.
Sorry !!
I edited the database in a wrong way!!!!!
Now everything works just fine.
Sorry !!
Spoiler
(\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/)
Spoiler
(@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@)
Spoiler
(>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<)