
The Original Postal Has Been Made Open Source - davemo
http://runningwithscissors.com/?p=2318%3Fage-verified%3Db5f8c522d5?age-verified=b5f8c522d5
======
1wd
"the CDude class, which is the main, player-controlled character in the game."

"CDoofus is the class for the enemy guys [...] Started this file from from
CDude and modified it to do some enemy logic using the same assets as the
sample 2D guy."

"COstrich is the object for the ostriches wandering about in the game. class
COstrich : public CDoofus"

Hilarious. Reminds me of CBruce in Tony Hawk's Pro Skater: "Their code [...]
originally written for Apocalypse[...] a Playstation game featuring Bruce
Willis, which, we learned, is why in Tony Hawk the code for the classes of
skaters is called CBruce."

[http://www.gamasutra.com/view/feature/131563/postmortem_trey...](http://www.gamasutra.com/view/feature/131563/postmortem_treyarchs_tony_hawks_.php)

"Project: Nostril (aka Postal)"

Any idea what RSPiX Blue, Cyan, Green and Orange layers are?

~~~
mgurlitz
From Postal Overview.txt: "The game is built on top of our cross-platform
library, called "RSPiX" (pronounced "risp-icks"). RSPiX is organized into
several levels, from low-level to high-level functional. Each level is named
after a color." ([https://bitbucket.org/gopostal/postal-1-open-
source/src/defa...](https://bitbucket.org/gopostal/postal-1-open-
source/src/default/Postal%20Overview.txt))

In summary, blue provides graphics/audio/input functions, cyan is a UI
framework (with printer support), and the distinctions between green and
orange "become rather blurry at some points."

------
j_s
POSTAL Redux is currently $1.43 (84% off) on Steam; reminds me of Contra.
Reviews say the only unexpected down side is load times; hope they can tighten
that up.

[http://store.steampowered.com/app/401680/](http://store.steampowered.com/app/401680/)

Edit: I think the big "feature" is co-op.

~~~
Alupis
For me, Postal 2 was the peak of the franchise.

It's goofy, and has it's fair share of [sometimes funny] bugs, plus it has
first person view.

It's currently on sale for $0.99 on Steam[1]

[1]
[http://store.steampowered.com/app/223470/](http://store.steampowered.com/app/223470/)

~~~
jakebasile
It is amazing how much objectionable content they put in that game while still
maintaining a satirical black comedy tone instead of a "trying too hard" feel.
The tagline was "it's only as violent as you are!" as it is possible to
complete all your tasks without violence.

At one point, it has you protecting the developers of the game from anti-
violent video game protestors who want to solve their problems with violence.

You can use cats as suppressors for your weapon.

You can urinate at will, and can discover you're infected with gonorrhea, for
which you can get medicine.

Really, a great game for those with an open sense of humor. Postal 2 is a
great example of why games shouldn't be censored.

~~~
andrewflnr
So what you're saying is that it's the video game version of Cards Against
Humanity.

~~~
jakebasile
I think CAH does tread into the TryHard zone, but that's personal taste.
They're similar in method but different in feel.

~~~
nso
I think CAH is going for the shock factor, while Postal is like an extended
penis joke

------
joaodlf
This reminds me, I actually had some contact with the guys behind RWS many
years ago, I was a young man and very excited about HTML/CSS and design in
general, I ended up designing their forum (it was running on IPB):
[http://tinyimg.io/i/5GTDNgx.jpg](http://tinyimg.io/i/5GTDNgx.jpg)

Postal 2 is one of my favourite games ever. Had a blast in both single player
and online. Me and my friends still talk about it after all these years!

~~~
uncletammy
I spent a lot of time on that forum! In fact, I just dug through my email from
2003 looking for my photo contest submission (I didn't win but I got an
honorable mention) and I found an email that I had sent to the webmaster
complimenting them on the new layout. I guess that should have gone to you ;)

~~~
joaodlf
I wasn't a huge regular, just kinda lurked for most of the time.

I remember those forums being absolutely relentless... Definitely one of the
far corners of the internet!

------
qwertyuiop924
Wow. Now I can play it on my Linux system. Thanks, RWS.

This, as well as being a fantastic gesture, makes it seem as though RWS
understands something that many of its contemporaries don't: Games, or rather,
their engines, must be open-sourced for those games to continue to be playable
and relevant. You can't update your games forever, and sooner or later, they
will be rendered unplayable by the inexorable march of technology. If you open
source your engine, that doesn't have to happen.

Take a look at Doom. New content for Doom 1 and Doom 2 is still being released
by the community, long after competitors like Duke3D have stopped. Why?
Because Doom has a passionate community, and many modern, open source engines
that make running the game on new systems a piece of cake.

~~~
SwellJoe
_Now I can play it on my Linux system._

It looks like it's been available for Linux for a while. Steam has it for
Linux, and the compatibility info shows Ubuntu 12.04...so, I would guess the
port happened many years ago.

~~~
throwaway7767
Postal had a very early linux port, I remember playing in the early 2000s. I
think it was one of the games ported by Loki Software before they went
bankrupt (ahead of their time I guess).

I remember I had some problems with sound in it because of the in-kernel sound
driver for my laptop's sound chip didn't deal well with mmap()ed access, which
the game required. I used the proprietary OSS audio stack which had a driver
that didn't have that problem. Of course it was only an evaluation version and
would shut off the sound after some minutes of play.

Kind of glad these things are rarely an issue on the linux desktop anymore :)

~~~
SwellJoe
If it weren't so sad, it'd be hilarious how long it took for sound to even be
_close_ to usable on Linux. Only in the past couple of years has it become
reasonable to use Linux for any kind of serious audio work (and it is still
weaker than Windows and Mac on many fronts, though the latency and RT issues
have been resolved for some time). I started trying to use Linux for audio in
1995, when I was still going to school for audio recording. Only now is it
actually something that one might consider doing real work with.

It's always been such an afterthought, and always so flaky. For me, it was the
one thing that kept a Windows partition on most of my systems through all
those years.

~~~
qwertyuiop924
Most things work nowadays. Oxenfree doesn't, but that might just be my system
config.

------
pyromine
This is completely off-topic, but in the vein of talking about old games. Does
anyone have any suggestions for games that scratched the same itch as the old
school RTS games like Age of Empires and Rise of Nations?

I've been searching for years but never found anything that eclipses the
classics.

~~~
bminor13
It may be only tangentially related to the genre, but Factorio has stolen far
too many of my hours and is definitely worth the $20. It is engaging and
challenging like no other game I've played in the past couple of years.

~~~
rl3
> _...and is definitely worth the $20_

One thing I love about Factorio (aside from everything else), is the pricing
model. It never goes on sale, and never will. That means the usual agonizing
over "should I buy it or wait until a sale?" is non-existent. More developers
should adopt that model.

~~~
criddell
> It never goes on sale

I'm betting it will one day. I'm waiting.

~~~
rl3
[https://www.factorio.com/blog/post/fff-140](https://www.factorio.com/blog/post/fff-140)

~~~
criddell
That's fine. I still think it will. It's not like I don't have 10,000 other
ways to spend my time and money while I wait.

------
cr0sh
I was pleasantly surprised by the amount of useful comments in the code.

I remember when the source code for Descent was released; not only was the
code somewhat opaque (unless you were experienced with portal-style engines),
but there were hardly any kind of comments to help guide you along.

~~~
SwellJoe
Reading some of the docs in the source tree makes it apparent it's been ported
to a bunch of platforms and for a bunch of different markets, and it looks
like a lot of people have touched the code over the years. With an experienced
hand guiding the process, that usually leads to good quality, in terms of re-
usability, stability, and code comments. Being 19 years old is also good for
quality...even if it's huge and scary and difficult to wrap ones head around
in a short time, somebody has run into every possible edge case and weird
compatibility issue in all that time, and they've probably fixed it. Old code
bases aren't really _fun_ to work on, but they are usually really productive
to work on.

------
stygiansonic
There are some interesting notes about how the multiplayer was originally
implemented:[0]

" _Once the game is running, everything is peer-to-peer. The only information
the peers send each other is the local players ' input data, which is encoded
as a 32-bit value (where various bits indicate whether the player is running
or walking, which direction, whether the fire button was pressed, etc.). No
position, velocity or accelleration data is transmitted. NOTHING else is
transmitted._"

In order for this to work, they had to make sure all memory was initialized to
the same values, so that each client had the same known starting state. They
also had to use the same PRNG, initialized to the same state, so that a known,
deterministic pattern would be produced. But eventually they ran into a
problem that couldn't be solved in software: The FPU of different CPUs would
not return the same results for the same inputs:

" _However, dispite our best efforts, there was still a serious flaw lurking
behind the scenes that eventually caused serious problems that we couldn 't
work around. It seems that different Floating Point Units return slightly
different results given the same values. This was first seen when pitting PC
and Mac versions of the game against each other in multiplayer mode. Every
once in a while, the two versions would go out of sync with one another. It
was eventually tracked down to slightly different floating point results that
accumulated over time until eventually they resulted in two different courses
of action on each client. For instance, on the PC a character might get hit by
a bullet, while on the Mac the same character would be just 1 pixel out of the
way and the bullet would miss. Once something like that happens, the two
clients would be hopelessly out-of-sync._"

0\. [https://bitbucket.org/gopostal/postal-1-open-
source/src/defa...](https://bitbucket.org/gopostal/postal-1-open-
source/src/default/Postal%20Overview.txt)

~~~
EamonnMR
This is also how the original Doom's networking worked[0], and still used to
implement RTS networking[1] where the number of entities to be synchronized is
very large compared to the amount of input.

0\. [http://fabiensanglard.net/doom3_documentation/The-DOOM-
III-N...](http://fabiensanglard.net/doom3_documentation/The-DOOM-III-Network-
Architecture.pdf)

1\.
[http://www.gamasutra.com/view/feature/131503/1500_archers_on...](http://www.gamasutra.com/view/feature/131503/1500_archers_on_a_288_network_.php)
1500 archers is the classic treatment but also see dissenting opinion here:
[https://medium.com/@treeform/dont-use-lockstep-in-rts-
games-...](https://medium.com/@treeform/dont-use-lockstep-in-rts-
games-b40f3dd6fddb#.aq6fut80r)

------
crack-the-code
Awesome! Now just give me Diablo 2, and I will be content for life.

------
mixedbit
Does the release include the original game assets, or do assets need to be
purchased (like with Doom releases)?

~~~
SwellJoe
I dunno, but Postal is $0.49 in the Steam sale right now, if you need the
assets.

[http://store.steampowered.com/app/232770/](http://store.steampowered.com/app/232770/)

~~~
a3_nm
Even if they are available for $0.49, having them under an open source license
would be very different. (It would make it possible, e.g., to modify them and
ship them in other games.)

~~~
SwellJoe
Oh, I agree. I just wanted to point out that it's on sale, and so cheap that
anyone wanting to play with this should grab it.

------
foxhop
I still have my original copy from 19 years ago, when I was 12 years old! : )

picture:
[https://twitter.com/RussellBal/status/814612135150055424](https://twitter.com/RussellBal/status/814612135150055424)

------
ionised
Many a fun time I had with the Postal level editor, placing ostrich-dispenser-
dispensers around the map in great number and watching the ensuing carnage
after a few well-aimed napalm canisters.

------
Insanity
Reading this, as well as the comments in this thread makes me want to play the
game again. Might fire it up over the weekend and I will surely go through the
code for a while!

It was a nice late-christmas present ;-)

~~~
foxhop
I bought Postal Redux on Steam last night for under $2 and played to level 5.
Still a very playable game!

------
nercury
Reading the source code of this is sure sobering. All files and code lines are
there for the single purpose - to ship the game.

------
BillinghamJ
Misread the title as saying "Portal"! Pleasantly surprised however - I never
played Postal.

------
aaronsnoswell
I thought the title said 'Portal', not 'Postal'. Disapointed :P

~~~
erikj
It would be amazing if Valve made Source Engine open source, but that would
require them to replace Havok and perhaps other middleware.

~~~
foxhop
Many games from this era were free homebrew Half-life mods. I think Valve
should do more to promote hacking and modding their games.

Counter strike was created as a mod by the community as well as day of defeat.

~~~
talmand
I do believe that almost all of Valve's games started out as mods.

One could make an argument that all of their games started out as mods, in one
way or another.

------
Endy
Is there any word on a DOOM-style sourceport happening?

------
Circumnavigate
This game is one of my favorite classics.

------
grendelt
"I regret nothing."

