Copy Link
Add to Bookmark
Report
Doom Editing Digest Vol. 01 Nr. 540
From: owner-doom-editing-digest
To: doom-editing-digest@nvg.unit.no
Subject: doom-editing-digest V1 #540
Reply-To: doom-editing
Errors-To: owner-doom-editing-digest
Precedence: bulk
doom-editing-digest Wednesday, 3 January 1996 Volume 01 : Number 540
Re: DEU. oops
Code Pointers
Re: ADMIN note/wait a min.
Re: Packet reading progress
Drones... (was Re: Packet reading progress
Sound Interceptions (was: packet progress)
Re: Drones... (was Re: Packet reading progress
Re: Drones... (was Re: Packet reading progress
WEEKLY REMINDER : Beginner's Questions
Re: Drones... (was Re: Packet reading progress
Re: Sound Interceptions (was: packet progress)
Code Pointer List
Re: DEU.
Re: Sound Interceptions (was: packet progress)
Re: Drones... (was Re: Packet reading progress
----------------------------------------------------------------------
From: mmathews@genesis.nred.ma.us
Date: Mon, 01 Jan 96 22:18:44 -0500
Subject: Re: DEU. oops
Sorry about that, folks. Wasn't meant for you.
Mark Mathews mmathews@genesis.nred.ma.us TEAM OS/2, TEAM DEU, TEAM WOLF3D
Are you using DEU, WARM or WinTex for DOOM? WHY NOT?? Ask me about HeadOn.
------------------------------
From: Damien.Wellman@Narrows.Kendra.Com (Damien Wellman)
Date: 31 Dec 95 23:49:47 -0800
Subject: Code Pointers
I noticed a message on a list of code pointers being available somewhere. I'm
still trying to figure them out myself, however I only have e-mail access so I
can't go get it myself.I was wondering if anyone would e-mail me a copy of it
if possible (or if it isn't too big, a uuencode of that dehacked grab bag).
... "And pray that there's intelligent life somewhere out in space."
- ---
* TLX v4.00 *
- --- Blue Wave/DOS v2.21 [NR]
- --
|Fidonet: Damien Wellman 1:262/31
|Internet: Damien.Wellman@narrows.kendra.com
|
| Kendra Communications - FTS <=> Internet Gateway
| When Fido's all ya got, make the best of it.....
| Via-COPLINK 1:343/304 (206)397-6021 Everett WA
------------------------------
From: Bernd Kreimeier <Bernd.Kreimeier@NeRo.Uni-Bonn.DE>
Date: Tue, 2 Jan 1996 14:31:20 +0100 (MET)
Subject: Re: ADMIN note/wait a min.
Reminder/clarification:
>jh32322@ltec.net wrote:
>I would also like to thank the list for helping me get this off the
>ground and ...
Null problemo. But, as he said, write to jh32322@ltec.net on D**M3
issues. Thanks.
>you can count your frags that I won't post again unless its
>of an advanced doom-editing nature.
No sweat. Just keep it to announcements like "is available" or
"preview available", and include a warning "no discussion here,
post to me at...".
To remind all of us: this list is intended for *results*, not
for "what I'm doing right now" or "what would be nice". New
findings, new insights, announcements, pointers to examples,
tools, algorithms.
Unfortunately, the list currently suffers
careless postings (private discussions, full quotations)
off topic (D**M3)
new year eve delivery failures
(200 in 3 days, 20 while I'm writing this)
and we will have to unsubscribe persistent offenders any time
traffic gets out of control.
"It's nothing personal."
B.
P.S: If you want details, or make a statement on this policy,
do NOT write to the list, write to owner-doom-editing@nvg.unit.no.
------------------------------
From: Jim Dethlefsen <jim@galt.osd.mil>
Date: Tue, 2 Jan 1996 11:09:22 -0500 (EST)
Subject: Re: Packet reading progress
Interesting...
I see another application for this, and it's not a good one;
Using this like a network packet sniffer, you could create a "super heads-up
display" that would let _you_ know where everything and everyone was.
I would be interested in the packet sniff data to see what can be done about
combining serial head to head games and IPX network games. It would be nice
if one of your local DM compatriots could dial into your local area network and
play.
- - Jim D
------------------------------
From: "M[tm] 'Matt trademark' Walsh" <mtmr@walsh.dme.battelle.org>
Date: Tue, 02 Jan 1996 13:12:38 -0500 (EST)
Subject: Drones... (was Re: Packet reading progress
=> From: "M[tm] 'Matt trademark' Walsh" <mtmr@walsh.dme.battelle.org>
=
=> So far, I am certain I can now determine:
=>
=> - -when the node I'm monitoring shoots his weapon
=> - -when he turns right, left, goes forward, goes backward, etc.
=> - -when he switches weapons (and I can tell what weapon he selected
=> and...
=> - -WHEN HE DIES!!!!
=
=This is very cool.
Thanks. Incidentally, I now can:
- -send my own 'talk' message
- -move, shoot, use and choose weapons
but I am really having a hard time telling when I run into something or where I
am on the map (from the pack info, of course.)
=I've often thought it'd be cool to have a node on a deathmatch net that
=wasn't running doom but ran a program that controlled one of the
=players. You would have to simulate the internals and networking of
=the Doom engine (completely non-trivial) but you could skip all of the
=3d graphics. The result would be a player that was totally
=programmable.
Well, for starters you could pick a 'path' that the character would go on, like
forward and backwards, in a loop around an arena, etc. that he could 'blindly'
follow yet shoot like crazy. It would be kind of wild to see a computer
controlled guy.
Incidentally, I now guess this is what a 'DRONE' is. Anyone at all ever get any
results with the -drones parameter? I've tried it but no effect.
And I do know what the other players are DOING; i.e. when they're shooting, when
they're moving; only thing is I don't know where they are, and if they are in
fact moving or stuck on a wall.
=You could make him into a terminator-like thing that dodged perfectly,
=never missed, always ran full speed, knew the location of all objects,
=and more personally, knew where you were, what weapons you had, what
=your stats were...
If I had just a TINY BIT MORE info from the packets this would be pretty easy to
do actually.
====== M(tm) mtm@walsh.dme.battelle.org ====
"Standing on a hill in the mountains of dreams, telling myself its not as hard,
hard, hard, as it seems."
My mailer limits my sig to 4 lines. But ingeniously I bypassed this problem by
------------------------------
From: "M[tm] 'Matt trademark' Walsh" <mtmr@walsh.dme.battelle.org>
Date: Tue, 02 Jan 1996 13:43:42 -0500 (EST)
Subject: Sound Interceptions (was: packet progress)
How hard would it be for me to intercept IRQ 5 (or whatever my SB Pro cards use)
and take a quick look at the correct register/mem address to see what sound Doom
is trying to play?
For instance, I could then know when someone picks up stuff, rides an elevator,
dies, fires a weapon, etc.
Does Doom load all the sound stuff into ram first, then just tell the SB to play
'sound #5', or does it pipe the sound data to the SB each time it makes a sound.
In either case, any ideas?
===== M(tm) mtm@walsh.dme.battelle.org ====
"Standing on a hill in the mountains of dreams, telling myself its not as hard,
hard, hard, as it seems."
My mailer limits my sig to 4 lines. But ingeniously I bypassed this problem by
------------------------------
From: jelson@conline.com (Jim Elson)
Date: Tue, 02 Jan 1996 15:09:05 -0600
Subject: Re: Drones... (was Re: Packet reading progress
At 01:12 PM 1/2/96 -0500, mtm@walsh.dme.battelle.org wrote:
>
>Incidentally, I now guess this is what a 'DRONE' is. Anyone at all ever
get >any results with the -drones parameter? I've tried it but no effect.
I believe that "feature" was removed as of Doom v.1.2
- --H2HMud
============================================================================
H2HMud NorthAmerican DeathMatch Tourney
Promo/Marketing Coordinator for "The New Technology: Evilution"
- ----------------------------------------------------------------------------
jelson@conline.com; WEB page ==> http://www.conline.com/~jelson/index.html
------------------------------
From: johnsond@std.teradyne.com (Dean Johnson)
Date: Tue, 2 Jan 1996 13:27:26 -0800
Subject: Re: Drones... (was Re: Packet reading progress
> From mtm@walsh.dme.battelle.org Tue Jan 2 10:10:11 1996
> =This is very cool.
>
> Thanks. Incidentally, I now can:
>
> -send my own 'talk' message
> -move, shoot, use and choose weapons
>
> but I am really having a hard time telling when I run into something or where
> am on the map (from the pack info, of course.)
Yeah. I'm strictly working on theory here (also stuff that I've heard
here over the years) but to find a player's location on the map I
believe that you will have to:
1) parse the wad file so you have the map,
2) determine where each player starts (this may be trickier
than it sounds. I'm not sure anyone has ever
completely understood this mechanism)
3) update each player's position based on the movement commands
(including weapon hits) that you get over the packets.
You probably need to allow for collisions too. That
is, if a player faces into a corner and runs full
speed, I assume that the movement command is
transmitted the same as if he was actually moving
across an open space.
Other stuff you'd probably want to track include: when things are
picked up and when they regenerate, when monsters and barrels lose
enough hit points to "die", etc. These are things that I believe are
determined independently by each doom engine involved in the Net.
It'd be easy to get this halfway working but it gradually become sout
of sync with the other engines due to small errors.
FWIW, this doesn't seem like a very good way to have designed the
networking. I can only assume that it was added as an after thought.
> =I've often thought it'd be cool to have a node on a deathmatch net that
> =wasn't running doom but ran a program that controlled one of the
> =players. You would have to simulate the internals and networking of
> =the Doom engine (completely non-trivial) but you could skip all of the
> =3d graphics. The result would be a player that was totally
> =programmable.
>
> Well, for starters you could pick a 'path' that the character would go on, lik
> forward and backwards, in a loop around an arena, etc. that he could 'blindly'
> follow yet shoot like crazy. It would be kind of wild to see a computer
> controlled guy.
That'd be a good first experiment to see if this was possible. It may
be tough to keep the other nodes that are running Doom to think that
everything is in sync. That is, run through a wall, select a weapon
that you don't have, or walk over something and not pick it up, and I
bet you get a crash.
> =You could make him into a terminator-like thing that dodged perfectly,
> =never missed, always ran full speed, knew the location of all objects,
> =and more personally, knew where you were, what weapons you had, what
> =your stats were...
>
> If I had just a TINY BIT MORE info from the packets this would be pretty easy
> do actually.
I'm not sure that I would use the word "easy." It's possible and
certainly interesting but there's a bit of work to be done. Simulating
the Doom internals and absorbing and generating the networking packets
is non-trivial. If I was still in school (Cal Poly, Computer Science,
BTW) this'd make a cool Senior Project.
Of course, we have plenty of cool tools for working with Doom that were
probably more work than this. =)
- -D
------------------------------
From: John Wakelin <johnw@datametrics.com>
Date: Tue, 2 Jan 96 16:26:13 -0500
Subject: WEEKLY REMINDER : Beginner's Questions
This message is being posted at the request of the list's caretakers.
In this you will find: the purpose of this list, how to get answers
to less than 'expert' questions, how to get info about the list, and
what can get you kicked off the list. If you are new to this list,
please take a moment to read the short note that follows. It will
help to get you up to speed and, may save you some grief in the future.
====================================================================
FROM: the list caretaker; *** A REMINDER ***
The DOOM-editing list is not a list aimed at newcomers to
DOOM-editing. Its purpose is to provide discussions on *advanced*
DOOM editing techniques, as well as discussions on the variations of
the DOOM engine. Many of its members are not tolerant of repeated
"beginners" questions. Sorry--that's just the way they are ;) There
is much that beginners can learn from the list, however, and we would
like the list to be of use to as many subscribers as possible.
In the past, there has been much moaning about new subscribers asking what
old-hands feel to be "typical newbie questions", usually posted in
ignorance of the fact that the topic has been discussed to death
previously. This leaves newcomers in a quandary: to post or not to post?
Well, help is at hand. The "Beginners Questions Service" can act as a
buffer between you and the higher echelons of the DOOM-editing elite,
conceited lot that they are. It works like this: if you have a question but
don't know whether it's advanced or not, and would like to avoid any
potential embarrassment from asking the question in front of the whole
list, you are encouraged to mail it in the first instance to:
John Wakelin : johnw@datametrics.com
Your question will either be answered or, if deemed appropriate for the
list, forwarded to it. This service is offered as a potential red-face
saving and list-annoyance abatement service: there is absolutely no
requirement on anyone to make use of this service, but doing so may get you
an answer quicker than sending to the list, and can potentially save you
from finding yourself in the middle of a flaming. But then, as a DOOMster,
you can take a toasting, right?
**NOTE: If your questions are prefixed with the code WQ: in the subject
field (e.g. Subject: WQ: Sprites), they will be processed quicker because
they will be brought to light sooner!**
====================================================================
Remember also, that if you want any general info about this list,
including instructions for unsubscribing from the list, you should
send mail to the list-server, thus:
To: majordomo@nvg.unit.no
Subject:
Body: info doom-editing
====================================================================
**How to get kicked off DOOM-Editing**
This list looks very unfavorably upon chain-letters (No matter what
the cause). The caretakers have indicated that persons posting these
items to this list are subject to immediate unsubscription with no
warning.
The admin of this list also looks very unfavorably upon any off-topic
discussions whether they be religious arguments, Quake or public flaming
via the list. Discussion should be relevant to DOOM, Heretic or
Hexen editing. Discussions of Quake are relevant only to the extent
that they relate to the released id games, that means that that they
are usually off-topic. NOTE: Posts from John Romero are generally
considered exempt from this rule. :)
So far, admin has specifically stated that the religious battles as
well as public flaming via the list are the other things that will
get you kicked from the list without warning. So, if you must stoop
to slapping at someone verbally, please, do so via PRIVATE mail.
CONSIDER THIS YOUR WARNING.
=====================================================================
This reminder will be posted here weekly, with the subject title:
WEEKLY REMINDER : Beginner's Questions
=====================================================================
-= John Wakelin =-
-= .sig copyright violator =-
-= TeamTNT - Member =-
------------------------------
From: "M[tm] 'Matt trademark' Walsh" <mtmr@walsh.dme.battelle.org>
Date: Tue, 02 Jan 1996 17:02:40 -0500 (EST)
Subject: Re: Drones... (was Re: Packet reading progress
=> -send my own 'talk' message
=> -move, shoot, use and choose weapons
=This it pretty cool. I've tried all this before unsucsessfully. Could you
=post the source code for this program, or at least the packet structue.
I will once I get a little further (my PC I'm working on isn't here anyway).
However, all you need to do is start with the ipxsetup code (available from the
aol doom site) and change the send addresses to 'FFFFFFFFFFFF'. This has 2
effects:
- -any network adapter can now hear the packets (good)
- -any network adapter can now hear the packets (bad - because it will more than
likely slow down your Lan. I have my own LAN, so I don't care)
=But as soon as the dummy player runs into any sort of obstacle, the
=whole pattern would get messed up.
Actually, I can tell when someone tries to move but can't. One of the fields
changes whenever you change position. It's hard to tell what the heck it's
changing TO, but it won't change at all if you didn't successfully move. Thus,
you could have a character that would act just like the good old toy cars that
would drive until they hit a wall, spin around, hit another wall, etc. Not very
smart...
...but I could train him to 'feel his way around' and learn the level. Course,
it gets hairy when you don't know where you are when you die, or thrown off
course from a shot from someone else. Boy that sounds hard just talking about
it.
=I've never heard of this. Is -drones a parameter for IPXSETUP? If so,
yes. It's passed to Doom as a command line parameter. Incidentally, ipxsetup
mainly passes on the command line parameters you pass it.
=There's one other thing - someone mentioned something about an extra
=packet that they couldn't figure out. I'd guess that it's some sort of
=consistency checker.
That was me, and that field may or may not be de-codeable by a human being
without some more inside knowledge. I found the packet spec finally, and it
looks mainly to be what I already know, but there are a few more outs in this
ball game before I return to my dugout!
====== M(tm) mtm@walsh.dme.battelle.org ====
"Standing on a hill in the mountains of dreams, telling myself its not as hard,
hard, hard, as it seems."
My mailer limits my sig to 4 lines. But ingeniously I bypassed this problem by
------------------------------
From: "James S. Blachly" <stew@intellinet.com>
Date: Tue, 02 Jan 1996 17:08:17 -0600
Subject: Re: Sound Interceptions (was: packet progress)
At 01:43 PM 1/2/96 -0500, you wrote:
>How hard would it be for me to intercept IRQ 5 (or whatever my SB Pro cards
use)
>and take a quick look at the correct register/mem address to see what sound
Doom
>is trying to play?
>
>For instance, I could then know when someone picks up stuff, rides an
elevator,
>dies, fires a weapon, etc.
>
There surely is a simpler way, because at all times each copy of doom must
know what's going on in the environment, ie If someone clicks on a lift,
doom has to know it because it lowers the lift on ALL copies of doom, and
plays the sounds if you're near enuf in the environment to hear it.
Perhaps it just knows where each player is and when it sees the 'spacebar'
code each copy lowers the lift itself.. I bet that's what happens.
- -james.
James S. Blachly(R) is a registered trademark of God. Design is
(c)Copyright 1980 God. All rights reserved.
------------------------------
From: michael.hoenie@sharecity.com (MICHAEL HOENIE)
Date: Mon, 01 Jan 96 07:00:00 -0700
Subject: Code Pointer List
That code pointer list mentioned a while back ago would be nice. Anyone got
a FTP site I can find this? I was considering making a list myself.
- -+-
* michael.hoenie@sharecity.com << Michael S. Hoenie >>
------------------------------
From: michael.hoenie@sharecity.com (MICHAEL HOENIE)
Date: Mon, 01 Jan 96 06:54:00 -0700
Subject: Re: DEU.
- -->Hi Michael,
- -->
- -->DEU 6.0 does not exist. Look for DEUOS11D.ZIP on ftp.cdrom.com.
- -->This is for OS/2 only. Would you like to be a beat tester?
- -->
- -->Happy New Year,
Sorry, I'm not using OS/2. I thought I saw a new DEU later than the 5.21
version made BY the authors... Was that truth or just another hack?
- -+-
* michael.hoenie@sharecity.com << Michael S. Hoenie >>
------------------------------
From: Ben Morris <bmorris@islandnet.com>
Date: Tue, 02 Jan 1996 15:39:15 -0800
Subject: Re: Sound Interceptions (was: packet progress)
M[tm] 'Matt trademark' Walsh wrote:
> Does Doom load all the sound stuff into ram first, then just tell the SB to play
> 'sound #5', or does it pipe the sound data to the SB each time it makes a sound.
essentially, it tells the soundblaster to play "this much" data at "this address."
the soundblaster uses DMA to access that main system memory.
anyway, the only way to get going what you want to do is to flawlessly recreate the
physics used in the game. the math itself isn't that difficult; what IS difficult is
timing and measuring _everything_ exactly as the game does. remember, the slightest
discrepancy and you'll get a consistency error.
a few things i can think of:
- - doom uses a random seed that's based entirely on the current state of the game.
there are no "real" random actions in the game - if there were, demo LMPs wouldn't
work. you'd have to figure this one out, and where it's used.
- - what kind of math does the game use to determine: if a player's hit a wall? -
the arc of a falling player? - the distance and angle for a player to
activate a switch? - exactly how the bfg works? - etc, etc.
- - how fast does a door rise? how long is a teleport delay? how close does the
player have to be in order to pick up a stimpack?
unless you can exactly recreate all of the above _and_ the hundred other things you'd
end up needing, the zombie would quickly fall out of synch with the rest of the
players and the whole game'd be dumped due to lack of consistency.
- - ben
ps: sorry to be such a killjoy :)
------------------------------
From: "James S. Blachly" <stew@intellinet.com>
Date: Tue, 02 Jan 1996 17:24:46 -0600
Subject: Re: Drones... (was Re: Packet reading progress
At 01:27 PM 1/2/96 -0800, you wrote:
>
>FWIW, this doesn't seem like a very good way to have designed the
>networking. I can only assume that it was added as an after thought.
>
Yeah, I heard that it was quick hack. In doom .9 and I believe 1.0 and 1.1
as well the packets were broadcast to all nodes on the lan and admins. hated
doom 'cause it slowed down the whole network.
>> follow yet shoot like crazy. It would be kind of wild to see a computer
>> controlled guy.
>
>That'd be a good first experiment to see if this was possible. It may
>be tough to keep the other nodes that are running Doom to think that
>everything is in sync. That is, run through a wall, select a weapon
>that you don't have, or walk over something and not pick it up, and I
>bet you get a crash.
My guess about how doom controls the other players in net doom is this. It
regards each player as a "monster". That 'monster' has one weapon at a
time, just as real monsters do, but the engine keeps track of what weapon it
has. Thus, if a change weapon code is sent in a packet each other engine in
the netgame just makes that the new weapon for the 'monster' in the environment.
So if it sent the key for the'7' to switch to the BFG, and the player who
sent the packet didn't really have the BFG, I bet no one else would have a
problem with that.
(Hypothetical situation and speculation to follow, this is what I think
would happen)
Let's say through some strange freak of nature, The Red player in a 4 player
netdoom game hits '4' to switch to the chaingun, but in the packet the code
for the '7' is sent. All the other players' engines think that he has
switched to the bfg. So when he holds down the fire key thinking he can
pummel his opponent in front of him, he sees the opponent get hurt because
of multiple bullets getting fired. But everyone else just sees one (or two
if he held it down for a while) BFG blast appear and fly through the level.
If it kills one or more players THAT is when the consistency failure would
happen, not at the beginning when his packet said 'make me on BFG now' He
may have not even had the BFG. There is no reason for the other nodes to
keep track of what weapons everyone has.
This whole problem stems from the fact that network play was added as an
afterthought, and because it is syncronous, unlike, say descent which is
asynrchonus. In descent if someone gets hurt, they send a 'damage' packet
to all other nodes saying they have been injured. In internet descent, if
packets fail to reach their destination or are lost, the player simply looks
as if he's skipping around, allthough his view may be smooth. It may also
be impossible to hurt someone if your packet that says 'I fired' is lost.
Oh well.
This (The info about doom) is mostly speculative but I would imagine that is
how they take care of weapons. Has anyone thought to ask id?
- -james.
James S. Blachly(R) is a registered trademark of God. Design is
(c)Copyright 1980 God. All rights reserved.
------------------------------
End of doom-editing-digest V1 #540
**********************************