Allegro.cc - Online Community
Post Reply

Allegro.cc Forums » Allegro.cc Comments » Thread locks too soon

rss feed Print
Thread locks too soon
Bruce Perry
Member #270
April 2000

You suffered from an off-by-one bug. Congratulations Chris Katko! :D

--
Bruce "entheh" Perry [ Web site | DUMB | Set Up Us The Bomb !!! | Balls ]
Programming should be fun. That's why I hate C and C++.
The brxybrytl has you.

Chris Katko
Member #1,881
January 2002
avatar

2500 replies, that is.

Also, I just watched Enemy Mine. Holy. Crap. It was amazing. I... I had no idea it would be "that" kind of movie. I'm almost never surprised by films anymore. It was a real treat.

I actually felt an emotional connection to the story.

Dennis Quaid is a freakin' great actor (and Louis Cameron Gossett Jr. deserves a gold medal--I wouldn't have even recognized him.)

It puts the Next Generation episode that ripped it off to complete shame.

-----sig:
“Programs should be written for people to read, and only incidentally for machines to execute.” - Structure and Interpretation of Computer Programs

Neil Roy
Member #2,229
April 2002
avatar

Unreal Gold, is FREE for another 24 hours on GOG.com and STEAM for those interested. There is also a fan made patch which updates it with modern resolutions as well as high res texture packs which look awesome.

I already own it, but grabbed it on both anyhow because free. 8-)

Eric Johnson
Member #14,841
January 2013
avatar

Neil Roy said:

Unreal Gold, is FREE for another 24 hours on GOG.com and STEAM for those interested.

Sweet. I grabbed a copy on Steam. Thanks for the heads-up. :)

dthompson
Member #5,749
April 2005
avatar

Aw, if it were Unreal Tournament I'd be downloading it without a second thought. Never looked at the original Unreal.

I got the demo of Tournament on a CD from a magazine in around 1998 and I played it incessantly (though with the gore turned off so my mum wouldn't complain)

______________________________________________________
Website | Where my website used to be
"Don't drink the water. It's $2.95 a bottle."

Peter Hull
Member #1,136
March 2001

Possibly of interest to those who don't read Hacker News and have an opinion on C, C++, or D:
https://news.ycombinator.com/item?id=17129678
including some comments by Walter Bright. He comes across as a nice guy.

Edgar Reynaldo
Member #8,592
May 2007
avatar

2500 replies indeed

{"name":"16146625634_a5debd8039_b.jpg","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/2\/a\/2a36ddb462c5eff045edbb77aab72319.jpg","w":625,"h":795,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/2\/a\/2a36ddb462c5eff045edbb77aab72319"}16146625634_a5debd8039_b.jpg

Chris Katko
Member #1,881
January 2002
avatar

Walter and Andrei really are nice guys.

Check out some benchmarks that include D. It's top 5 in speed and memory, and in some places beats C and C++ for first place. (JSON parsing using native library!)

https://github.com/kostya/benchmarks

-----sig:
“Programs should be written for people to read, and only incidentally for machines to execute.” - Structure and Interpretation of Computer Programs

Neil Roy
Member #2,229
April 2002
avatar

If you go to the Unreal engine 4 page, there's actually a modern version of Unreal Tournament which you can grab for nothing.

I hear there are still UT players going on with the original, though I haven't played in about 20 years.

dthompson said:

Never looked at the original Unreal.

The original Unreal actually looks better than the first UT. They run on the same engine, except UT cut some things out like detail textures and some fog effects in order to keep the game fast enough for online play. You can actually copy the Unreal files over to UT and play Unreal using the UT engine, it will just be missing certain things.

If you like UT, you will probably like Unreal, it's mainly a long single player campaign, and a very interesting one with awesome music, but it can do multiplayer as well. Also has a level editor with it like UT.

Chris Katko
Member #1,881
January 2002
avatar

I felt like Unreal was pretty generic. Graphically impressive but the story was basically "single player missions FPS" / "an addon at best".

It wasn't till Half-Life in 98 that people started really realizing that you could have an FPS with a real story.

Unreal Tournament 99 was/is super fun. I still remember trying to make my own levels. I've got UT99, and UT2K3/2K4 on GOG if you guys want to play some time. :)

Also, Tribes 1 was patched by the community and supports even 4K. But there's only like 1 server that has any people on it, and it's modded and the mod is very unbalanced. ("Railgun" is instakill, infinite ammo, infinite range and even kills "heavies." Why use anything else?)

I've been playing Blackwake (I had in my Steam library for YEARS never tried it.). It's Chivalry... but with pirates and multi-team pirate ships. (Chivalry is fun too.) But I've been having epic battles captaining pirate ships, ramming the enemy, boarding them, and cutting them to shreds. The captain pilots the ship, everyone else has to load cannons and fire. And you HAVE to work over voice chat to coordinate as cannons only aim VERTICALLY and the captain aims the ship HORIZONTALLY. So you have to work together to line up shots. Also, you have to run around and repair ship holes to keep from sinking and you can have insane frantic matches where the ship is 90% under-water and you SAVE IT and come back and kick the enemy's butt. (However, without friends, I don't know if it's got hundreds of hours of gameplay. It's only got 3 maps / modes, and is still "alpha" in terms of content. So don't spend lots of money on it unless you know you'll love it. VOICE CHAT is almost always full and leads to lots of really fun interactions with people.)

https://store.steampowered.com/agecheck/app/420290/

I played and beat Giants: Citizen Kabutu. Holy crap, it's amazing. The single-player is like a console game / story. It's hilarious. And multiplayer is class based. Human(ish) guys with jet packs and technology. "Sea Reapers" who have spells. And a single "kabutu" which is like a king kong / godzilla. All three factions play differently and fight. Too bad there are ZERO players on servers. :( So I never got to try multi.

video
(Giants in 4K60!)

I want to either start a website, or perhaps just join one, dedicated to playing old games. That is, you join a club or "faction" or "room" and one day a week, everyone decides to play a game, at the same time. So you schedule a day (or days) and that way everyone meets up and you can play with full servers even with games with small playerbases. "Thursday is BF1942. Friday is X-wing vs Tie-Fighter, and also a BF1942."

-----sig:
“Programs should be written for people to read, and only incidentally for machines to execute.” - Structure and Interpretation of Computer Programs

dthompson
Member #5,749
April 2005
avatar

Might have to check it out. :)

On the subject of awesome music, I always loved this track from UT. Takes me right back to floating around that absolutely mad skyscraper level.

______________________________________________________
Website | Where my website used to be
"Don't drink the water. It's $2.95 a bottle."

Neil Roy
Member #2,229
April 2002
avatar

Unreal... Generic? It's competitor at the time was QUAKE for crying out loud! It was ahead of it's time. It's engine was far ahead of the rest and you obviously never played Unreal at all if you didn't see the story in it. Wow.

Chris Katko
Member #1,881
January 2002
avatar

Neil Roy said:

Unreal... Generic? It's competitor at the time was QUAKE for crying out loud! It was ahead of it's time. It's engine was far ahead of the rest and you obviously never played Unreal at all if you didn't see the story in it. Wow.

You're talking to someone who loves the Unreal series. ::)

I didn't say it wasn't ahead of it's time. It was graphically beautiful (for the time), and had great esoteric weapons.

But when you look at it compared to the games that came later... it doesn't offer anything unique. It's an FPS game without an important story, and there have been dozens upon dozens of those. It's not a "bad" thing, it just means there are plenty of newer games that offer a better "thin story FPS" experience. You don't miss out on much.

Half-Life 1 (came out 6 months later!), for example on the otherhand (and I'm not even a huge Half-Life fan) isn't as visually impressive but the gameplay is downright amazing. The scripted sequences of monsters breaking through the walls, crawling through vents to get away, scientists running and screaming. That was revolutionary and still makes for a great experience.

Perhaps I'm biased in my examples. There are plenty of story-based FPS games now. But I'll never forget the elevator scene where one scientist is trying to hold the other by the hand in the empty elevator shaft, and then falls to his death.

When I was a kid, Unreal (as opposed to UT99) was basically a game that was used to either sell videocards (no one could run it--bragging material), or later, came for free with your videocard purchase.

I did already say Unreal 1 had lots of neat inventions. The engine itself was amazing, and again, the esoteric guns were clever AND useful and so iconic they're still featured (almost unmodified) in every subsequent version of Unreal Tournament.

So perhaps the word "generic" was the wrong one to communicate that I'm talking about stuff other than the core mechanics of "kill bad guys." Unreal is a "kill the monsters game". There's nothing wrong with that. But nobody would cite Unreal as a powerful story, or full of humor (like Giants: Citizen Kabuto). They'd cite combat. And while we may enjoy the nostalgia, I don't think most new kids would play Unreal and go "Wow, I got something unique that newer games don't offer better." Later games do the same thing, with better combat, better graphics, etc.

In 1998, Half-Life came out, I mentioned that. But also... Trespasser. A game that was literally decades ahead of its time where you controlled the physical hand and arm of a woman. Throw boxes, pickup guns and aim them even down to the wrist rotation. All while fighting dinosaurs. (Imagine that with a 3D headset now!) Pushing physical buttons in a 3-D world to open a passcoded gate. Shooting out the post supports of a trailer. Those are unique things that--even though the game has many flaws--make it far from a "generic" FPS.

The opposite is kind of like Call of Duty, or NFL 20xx. There's really no reason to play an older version of a football game (or many Call of Duty games) because they're just re-releasing the same "game" (shoot nazis, or kick the ball) with an updated engine. Better graphics, better voice acting, but the story is mostly replaceable (or non-existent).

Meanwhile, take System Shock 2. Bioshock 1/2 are "successors" but they really aren't. They ripped out all the good, unique stuff of RPG, inventory management, and a story that doesn't hold your hand with a "go to marker" and you end up with System Shock 2 still offering a unique experience that "sequels" don't actually replace. They're not better. They're different (and really, empty husks of what SS2 is.) So people still to this day want to play System Shock 2. It offers a unique experience that nobody has ever managed to replicate. (I hear "Prey" is a spiritual successor though. Again, dumbed down for the masses though--but perhaps not as much as Bioshock.)

-----sig:
“Programs should be written for people to read, and only incidentally for machines to execute.” - Structure and Interpretation of Computer Programs

Neil Roy
Member #2,229
April 2002
avatar

I don't compare it to games that came later. If you do that most older games will suck. It's simply an unfair comparison in my opinion. You need to compare it to games out at the same time, and it's closest competitor at the time was Quake. There was simply no contest.

I actually loved Unreal 2 myself and really wish they would do an Unreal 3. :/

Half life was definitely an amazing game, but it had a totally different vibe to it. Similar in how the story was honestly. You work your way through the levels in much the same way you did with Unreal, and it was a fairly long game the same as unreal. I don't see one better than the other though. Loved them both.

I never did complete Half Life though, I did complete Unreal and am working on it again with the newer high res textures and fan made patch. Been fun.

There was also a fan made Half Life which was remade using the Half Life 2 engine I think called Black Mesa you can (or could) get from Steam. Still working through it. It's really nicely done.

<I posted this on Thursday, time is ticking away>

Niunio
Member #1,975
March 2002
avatar

It wasn't till Half-Life in 98 that people started really realizing that you could have an FPS with a real story.

Define "real story", because Duke Nukem 3D has a story, even Wolfenstein 3D has one. I can't imagine how a "fake story" or "no real story" looks like.

Or may be you're doing a joke with it (real/unreal), are you?

-----------------
Current projects: Allegro.pas | MinGRo

Niunio
Member #1,975
March 2002
avatar

<duplicated>

-----------------
Current projects: Allegro.pas | MinGRo

bamccaig
Member #7,536
July 2006
avatar

He probably means more that Half-Life was one of the first games where the story became a first-class citizen. There's a story in Wolfenstein, but was it immersive? Did anybody play the game for the story? No. Probably most of the players didn't even know the story. They played it to "shoot" things. Most of the people that played it probably played it at school where it was installed by another student and had no context for it other than other people were playing it and it was new and exciting and fun. :P Half-Life may have been one of the first shooters where the storytelling was intricate. I can't say because I didn't even play the original until I had played the sequel, and even then I first played the Source port. The first shooter that I ever played that I can remember with a story is Soldier of Fortune II. And I loved it. But that came out around 2002.

Aaron Bolyard
Member #7,537
July 2006
avatar

Maybe someone here will think it's cool!

So I've been working on a game relationship database (GameDB) library, good for mapping standard relationships in things like RPGs and MMOs, called Discworld. In the GameDB, an Action is a relationship between Resource(s). For example, smithing (Action) an Iron full helmet (item Resource) consumes two iron bars (item Resource) and produces an iron full helmet (item Resource) while giving 50 smithing XP (skill Resource) and requiring level 22 smithing (skill Resource). This relationship can modeled easily in the GameDB: there's inputs (consumes a Resource), outputs (creates a Resource), and requirements (neither consumes nor produces a Resource, but is still required to satisfy the Action).

For my game, I created a DSL in Lua to construct the GameDB from some logic, some data.

So I define a game:

Game "ItsyScape"

Then I define some resources (e.g., items and skills):

ResourceType "Item"
ResourceType "Skill"

I create a smithing skill and a smith action:

ItsyScape.Resource.Skill "Smithing"
  ActionType "Smith"
  ActionType "Smelt"

And then I finally create a Resource with an Action:

#SelectExpand
1ItsyScape.Resource.Item "Iron full helm" { 2 ItsyScape.Action.Smith() { 3 Input { 4 Resource = ItsyScape.Resource.Item "Iron bar", 5 Count = 2 6 }, 7 8 Output { 9 Resource = ItsyScape.Resource.Item "Iron full helm", 10 Count = 1 11 }, 12 13 Output { 14 Resource = ItsyScape.Resource.Skill "Smithing", 15 Count = 50 16 }, 17 18 Requirement { 19 Resource = ItsyScape.Resource.Skill "Smithing", 20 Count = ItsyScape.Utility.xpForLevel(22) 21 }, 22 } 23}

And boom, in the test GameDB, there's three resources (smithing skill, iron full helm, and iron bar); a single action (smithing the iron full helm); and a few input/output/requirements.

I love how nice it looks. It's almost like a text-based format, but it's pure Lua code.

...

Also John Carmack said (paraphrased) story in games is like story in porn: it's there, but no one plays games for the story just like no one watches porn for the stories. (I don't necessarily agree, I'm just presenting his philosophy). Since Wolfenstein, Doom, and Quake are Carmack's creations, it's obvious why story is of no importance. It's there, but it might as well not be.

I'm pretty sure John Carmack said something like that... my brother would know for certain, he's a big fan of id Software and DOOM in particular.

Chris Katko
Member #1,881
January 2002
avatar

Niunio said:

Define "real story", because Duke Nukem 3D has a story, even Wolfenstein 3D has one. I can't imagine how a "fake story" or "no real story" looks like.

Or may be you're doing a joke with it (real/unreal), are you?

You can't win with these people. ::) Even though Duke Nukem is one of my favorite games of all time, and I've beat it 10+ times, and rave about it. It's never enough. ::)

Duke has some of the best level design of any game... ever. It was the first game (not to be even remotely paralleled until Postal 2) that made you feel like you were in actual places. Actual super-markets. Actual burger joints. And the levels were magnificently interactive. Doors that move. Dooms day machines. People will never forget the feeling of pushing a button and seeing an ENTIRE BUILDING COLLAPSE IN 3D... using a Doom-era engine. (Yes, I know what Build is.)

All that is great. It still wasn't a "realistic" story. It was cartoonish, exagerated. Full of male testosterone. Killin' aliens, and gettin' bitches. That allows you to suspend some disbelief.

Half-Life was also revolutionary. It had TONS of scripted sequences that don't hold the camera still. You were MOVING AROUND while the scripted sequences happened. The Black Mesa facility felt like a real, full of red-tape, over-beurocratic but hiding government secrets organization. The entire intro is full of wonderfully crafted lines like "we are a equal opportunity employer". The very first title card... black screen with custom font white, "Half-Life." It demanded you take it seriously. Like a movie would.

https://youtu.be/yJM9D3IkEWU?t=32s (32 seconds if A.CC fails)

Additionally, NPCs interacting through out. (Duke had no NPCs.) (They also added SKELETON ANIMATION!) The NPC sequences alone deserve awards. Monsters pushing through walls. Scientists hanging in elevator shafts desparately clinging on. A scientist who find "Hiding spots" on top of a super generator you're about to turn on and he quips "Don't tell anyone I'm here! This is my spot!" while his own buddy, he left behind, waits down below saying, "I haven't seen my buddy yet. Still waiting for him."

https://youtu.be/yJM9D3IkEWU?t=10m34s (13m34s)

https://youtu.be/yJM9D3IkEWU?t=1h36m57s (1h36m57s)

Even the later System Shock 2, never let you actually let you INTERACT with NPCs (a cost cutting corner). They were always separated from you, by an invulnerable piece of glass, or "ghosts" of recently dead people.

video

I'm playing through HL again, and holy crap. On hard difficulty? This game SCARES THE PISS OUT OF YOU. The scary sounds, never feeling safe, monsters popping out of walls (and not just "grates" but actually DESTROYING WALLS (hard-coded but still)) and never being able to reach full health... I never realized it before, but it really is like System Shock 2 in the kind of "I'm still able to move" horror. The non-stop trickle of NPC's with reactions to monsters, and guards, and events at hand, really help you "feel" what's going on in the story.

Scientists run to military commandos breaching in "they'll save us!" and then they get mowed down by the government instead. It's like the end of Alien 3.

Meanwhile, you never really feel scared in Duke (even though it's a great game) and the story is basically "bad guys took our women, let's kill them." (And it's still a FUN story. But it's not a complex or deep story.)

-----sig:
“Programs should be written for people to read, and only incidentally for machines to execute.” - Structure and Interpretation of Computer Programs

Edgar Reynaldo
Member #8,592
May 2007
avatar

Neil Roy
Member #2,229
April 2002
avatar

Dungeons of Daggorath

Yeah! That was one of the first "3D" games I ever played that really got me interested in anything 3D, on the COCO2. I have that on my computer somewhere.

It's part of what used to inspire me when I created similar stuff on my C64 etc... and even had a little to do with a more recent project I was messing with using just a console and text...

video

I used to mess around with that game when it first came out when I was around 15 on COCO2 displays at the local Radio Shack (sometime around 1980). :) Brings back memories.

...another idea I recently had was to do some old style 3D, no textures, all software just for fun. You know, those full flat shaded worlds.

Even though Duke Nukem is one of my favorite games of all time

Agreed. I loved all of the games mentioned for different reasons, so I really dislike comparing them as they all are their own thing. System Shock 2 was amazing in it's day as was Unreal and Half-Life... I certainly liked them all for different reasons.

I spent a lot of hours making Duke3D levels. Doom and Unreal Tournament levels as well. I miss those days. We just don't see that anymore, or things have gotten too complex and the fun seems sucked out of it all. There's something about no internet and just directly connecting to a friend and having all nighters blasting each other's brains out that was awesome. I still remember DOOM had a limit of either 99 or 100 kills then it wrapped around. One night a friend and I stayed up all night until sunrise on one level I made and we wrapped the score around to 4 kills each (so, 103 or 104 kills each). Good times.

l j
Member #10,584
January 2009
avatar

Maybe someone here will think it's cool!

So I've been working on a game relationship database (GameDB) library, good for mapping standard relationships in things like RPGs and MMOs, called Discworld [github.com]. In the GameDB, an Action is a relationship between Resource(s). For example, smithing (Action) an Iron full helmet (item Resource) consumes two iron bars (item Resource) and produces an iron full helmet (item Resource) while giving 50 smithing XP (skill Resource) and requiring level 22 smithing (skill Resource). This relationship can modeled easily in the GameDB: there's inputs (consumes a Resource), outputs (creates a Resource), and requirements (neither consumes nor produces a Resource, but is still required to satisfy the Action).

For my game, I created a DSL in Lua to construct the GameDB from some logic, some data.

I think it's cool. I like DSL's implemented in an existing programming language. They can make code cleaner without complicating the build process. Sometimes they can be kinda stupid, like Common Lisp's loop macro, although nice, having a standard commonly used construct implement an entire DSL seems overkill.

I like internal DSL's for parsers like FParsec and Boost.Spirit, never liked yacc and whatever. Boost.Spirit can lead to horrible compiler messages though.

Although perhaps a bit of a stretch to call a DSL, I've made this. (somewhat inspired by Unity's new ECS system)

 public class Data
        {
            public int Length;
            public RwDataStream<Position> Positions;
            public RoDataStream<Heading> Headings;
            [Exclude] public ParticleTag ExcludeParticleTag;
        }
        [Group] public Data data;

I'm trying to make an actual DSL to make it easier and less error-prone, but it won't be an embedded language.

Edgar Reynaldo
Member #8,592
May 2007
avatar

Niunio
Member #1,975
March 2002
avatar

@bamccaig & @Chris Katko: I think I understand now, and it has sense. Thanks.

-----------------
Current projects: Allegro.pas | MinGRo

Neil Roy
Member #2,229
April 2002
avatar

I created this one a few years ago. They're MUCH larger now of course. My first hard drive was 40Megs, one of these 32G microSD cards could hold roughly 800 of those hard drives now.

{"name":"611486","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/6\/6\/66267acab9b181ab34383d60609f4e9e.jpg","w":800,"h":545,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/6\/6\/66267acab9b181ab34383d60609f4e9e"}611486

Post Reply


Go to: