Showing posts with label screenshot. Show all posts
Showing posts with label screenshot. Show all posts

Tuesday, August 17, 2010

4.1 Civilians AI improvement

Follower alarm improvement
When one of your follower raise the alarm he will tell you what enemy he sighted.
Small improvement, but might be useful, especially if you keep contact by cellphone.
If you told him to guard your shelter and it is only a skeleton, it might not be worth the trouble to go back there in a hurry.

Civilian Tips
Civilian will have conversation about enemies and items they recently saw. Just hang around them and you might hear interesting tips.
Useful if you are searching for a specific item, or you were fleeing south and a guy comes at you and tell about about a disciple lurking there...

If players like this feature and it doesn't spam the message log too much I'll extend the feature for other kind of tips, such as buildings location (eg: "There's a groceries shop 18 tiles to the NW") or soldiers patrol.

This feature was very easy to implement thanks to the AI Percept system. The building thing will requiere a different implementation though.

End of post.

Tuesday, August 10, 2010

4.1 Grenades

Grenades are done.
Still have to do the AI for handling them and spawn them in the game world.

Grenades...What are they?
Throwable anti-personal explosives.
You can throw them up to a certain range, the skill Strong helps you throwing farther.
You throw them at a tile, not a target.
They have a very short fuse and a blast radius. You basically have one turn to run away after throwing them.
Can't "cook" grenades sorry, but you can take them back if you are insane enough.

Grenades... How do they work?
Like this.
Equip and fire.
You can throw/lob grenades over most things, including other people.
You do not need to view the target tile, so you can usually throw farther than you can see.
They do not bounce on things though.

Grenades... Do they kill?
Yes.

I know what you are thinking and the answer is : yes, you can indirectly kill other survivors with that :)
The blast is blocked by stuff, so you can image tactics like opening a door, throwing the grenade in a packed room and closing the door, if done properly the door will absord the damage of the blast.

Grenades... Do they destroy things too?
Yes, but only breakable objects. They are not for demolition (C4 will come later) and not very good for breaking resistant objects. They are meant to kill people.


Grenades... I like them!
Me too.

End of post.

Friday, July 30, 2010

Fffffuuuuuu

I thought I'd share one of of those "Ffffuuuuu" moments.


You know the feeling...
I can't go down the stairs either, I know who lurks there...

The game was an excuse to test all the advisor hints and the hospital in a real game context. Plus a couple of other stuff.

Died a few turns later. Fun.

End of post.

Tuesday, July 27, 2010

Alpha 4.1 : Advisor hints.

A nice new feature to help clueless new players who don't know the basic controls.
I also noticed that a significant number of players seems to ignore the existance of some features (using exits, pushing objects...)

ADVISOR HINTS
You can enable an Advisor (on by default).
The Advisor will monitor your situation and provide appropriate hints.
When the Advisor has a hint available, a little annoying popup appears and prompt the player to go read the hint. You can ignore it and keep playing, but because it's kinda intrusive you'll want to read it ;)
The hints are fired from the most basic ones (eg: how to move) to more complex ones (eg: how to fire a weapon), so it won't tell you the more advanced stuff until you have read all the simpler ones.

For example, as soon as you start a new game the Advisor wants to tell you how to move:


Later on the Advisor has a suspicious fetish for items and doors:

(missing H in Shelf)

I'll add enough hints to hopefully make the basic controls and gameplay clear.
Roguelike/RS veterans can safely disable the Advisor option.

CODING
Nothing special, but it's been quite a long time I didn't show some coding stuff so let's talk about the implementation.
Thanks to the way I've done the engine (go me!) and the wonderful world of C# lambdas, it was very easy and quick to implement.
For instance, to check if it's time to trigger the "Look! You can open a door" hint I just write a line like this:
                    return map.HasAnyAdjacentInMap(pos, (pt) =>
                        {
                            DoorWindow door = map.GetMapObjectAt(pt) as DoorWindow;
                            if (door == null)
                                return false;
                            return m_Rules.IsOpenableFor(m_Player, door);
                        });
(thanks for messing the formatting, Mr Blogger)

Then I just maintain a table of hints that were already fired, to ignore those.
The Advisor state is stored in the Session object, so it is saved with the game.

End of post.

Saturday, July 17, 2010

Alpha 4 progress - YOU STINK!

Sorry but it's true...

YOU STINK!
Survivors do stink.
So you can use a spray to clean the scent tracks. Helps cover your tracks, but don't expect the ultimate anti-chasing-zombie trick. Remember some Zombies have a visual memory as well as a smell sense, other just bash stuff randomly around, so don't cry if the Disciple STILL followed you :)

The migthy "Stench Killer" item, found at your local Pharmacy or girly men bedrooms :
 
I also did add the "zombies bashing the objects blocking the exits" thing I mentionned earlier. It makes basements much less safe, which is good :) A tip : spray some Stench Killer on the stairs/ladder...

Also as someone asked, of course you start knowing the location of the Police Station :
Later versions will get Airport, Fire station...



STOP!
The evil feature crawl.
I have to draw the line somewhere. I think there's enough new stuff to justify a major version release.
I didn't put Traps, Alarms and some follower stuff (A*, build orders) as planned, those will get in the next version, probably 4.1 or 4.2, depends on how much bugs there are to fix....

New stuff always means new bugs. I promise I'll try to not release a cheesy buggy version this time :)


TEST IT PLEASE!
That's right. I made the mistake of releasing a half-tested version last time (feature crawl...)
I did my usual "implement A-test A" routine this time.
And I will try to test everything properly for a few days.
Might catch few problems, might delay it for a few days.
And then release it.

UNOFFICIAL CHANGELOG
The changelog as it is now. Might still change a bit, but this should be pretty much final.

ALPHA 4 UNOFFICIAL CHANGES
--------------------------
Previous version focussed on Bugs and AI, this version focus on adding new content and new gameplay.
You can consider having winning this version of the game when completing all the Achievements.

FIXED BUGS
- Melee weapon Stamina penalty was not used properly.
- AI tried to get items where an actor was standing.
- Fleeing AI standing still and getting hammered when escape blocked (they now turn to fight).

GAMEPLAY
Maps
- New map : Sewers.
- New map : Subways.
- New map : House Basements.
- New map : Shop Basements.
- New building : Sewers Maintenance.
- New building : Subway Station.
- New building : CHAR Agency.
- New unique building & maps : Police Station.
- Switch on the power in the subway stations to open the gates to the platform and turn the lights on.
- Sewers & Subways Undeads invade their maps frequently and you never know when it happens. It's always dangerous down there.
- More links between districts on surface.
- Districts more specialized.
- Tuned map generation to better fit new default map size.
- New secret unique map. Do stuff there for Achievements.
Leaving Maps
- Entering maps/districts is a free action for the player - much less instant-death when entering districts/maps.
- Following can abandon you only when changing district - eg: they won't leave if they can't follow you in the sewers, subway etc...
Player
- Different possible start positions, not just in your bed.
Action
- New : Build small/large fortification - need Carpentry skill.
- Barricading also repair fortifications - no skill needed.
- New : Spray scent - add/erase odors, read the manual, use them sparringly.
Skills
- New Skill : Martial Arts - improves fighting when unarmed.
- Carpentry at level 3 allows you to use one less barricading material when building fortifications.
Undeads
- New undead : Zombie Rats, found in sewers.
- New 3rd tier zombie.
- New unique : A local urban legend about something that lives in the city sewers. Kill it for an Achievement.
Food
- Fresh, Expired (75% nutrition) and Spoiled (33% nutrition, vomitting chance) food.
Firing
- Rebalanced penalty when Firing respective to Stamina.
- Ranged weapons have more chances to jam under the rain.
Items
- New : 4 spraypaint colors to tag with.
- New : Unique item to find in the Subway.
- New : Police Jacket.
- New : Stench Killer, erase parts of your stinking tracks.
- Bolts Amo item increased to 30.
- Dropping empty spraypaint discard it.
- Rebalanced Huge Hammer STA cost (since it is now actually used).
Map Objects
- New : Power Generator, switch all them On to restore power to a map or activate something.
- New : Fortifications.
FoV
- Modified FoV shape.
- Increased minimal FoV.
Misc
- Eater Egg moved to one of the Sewers map...
Scoring
- There are 8 achievements possible.

INTERFACE & MANUAL
- Actors description tells since when they are undead/still alive.
- Effects in Sewers.
- When an exit is blocked, tell who/what is the blocker.
- City Information shows notable known locations.
- Trackers display icons on map if spotted target not visible (in addition to minimap dots).
- Updated manual.

GRAPHICS & MUSIC
- New gfxs for new stuff.
- New eyes : Big nerdy glasses ^^
- 4 new musics.

OPTIONS
- Resized Maps down and decreased Populations.
- Simulate when Sleeping disabled by default - prevent "sleeping lags :(" complains, re-enable it if you change districts often.

AI
- New AI for new actors.
- Improved AI inventory handling of ranged weapons (no more insane stacking).
- Some AIs will use some exits (ladders, stairs...) when appropriate (wander, track, flee).
- Undead AIs can follow scents through the exits - they can track prey/master between maps.
- Zombie AI : fixed problem with using memorized smell sensors data - this improves their scent tracking ability a lot.
- CivilianAI and SoldierAI with carpentry skill : will sometimes build small fortifications on their own.
- AI not interested in Spray items.

KNOWN BUGS AND GLITCHES
- FoV is assymetric in some situations (eg: when standing along walls).


Have fun!
And remember, die with a smile!

End of post.

Friday, July 16, 2010

Alpha 4 progress - Building fortifications & other stuff

Good progress with a major gameplay feature almost done.

The Police Station.
It's done. There is one Police Station in the city.
There are 3 levels : the entry hall on the surface, the offices level and the jails level.
There are cops and "guests"...
Cops are way too busy with rioting zombies in town, so you can do whatever you want down there.
Won't show screens of the building maps, its more fun to find out what can happen there the first time you will play.

Trackers display improvement.
I thought it would be nice to have the tracker display information on the map as well on the minimap. This will also be helpfull for the no-minimap people.

It looks like this, for all the 3 kinds of trackers (the cell phone, the Z-Tracker and "the other one" for "those guys"). Those trackers are already in Alpha 3.21 btw.

The Z-tracker, here used in the sewers. Some maps are always in darkness, so this could prove handy.

The Cell phone with my follower.

And finally, the "other tracker" for "those guys", here called "Pink Bunnies".


Building Fortifications.
With the Carpentry skill, you can build simple fortifications of two kinds, Small or Large.
Basically pushable speed bumps ("Small") and big walls ("Large").
It eats quite a lot of planks, so you can't really abuse it when fleeing. Its more meant as a mean of building... forts... When you reach 3-Carpentry building those will cost you one less plank.

Here's how it works and how it looks like.
I improvised a little fort to protect the Police Station. I made use of the cover provided by the very strong park fences and the cars.


Fortifications are not very resistant, I don't want the player to abuse them. After all, they are just hastily assembled pieces of wood.
You can see through both kinds of fortifications, but can only move (jump) through the small ones.

You will be able to repair fortifications (with the barricading action) , and order your followers to build ones.
I still have to work on these two features.

AI and Exits.
I did not mention that, but most actors can and will use the ladders and stairs just like you.
Expect annoying people disturbing you in your secret basement if you don't block the stairs.
And yes, Zombies too.
Zombie do yet not bash objects blocking the exits,  I stil have to implement that.


End of post.

Monday, July 12, 2010

Alpha 4 progress - Subway & other stuff

Subway
Worked on subways to make them more interesting.
You can open/close gates and lit/unlit the subway by switching the power on/off...

...Closing the gates on someone will crush them instantly. Quite dangerous those gates.
(Yes there is a typo about turning "on off")
I might add a wrecked wagon somewhere I have the time.

City Information
Improved the City Information screen.

 
Basements
Some houses have basements. There is not much down there, but it might provide a safe shelter... or not.
The stairs here lead to the basement. Notice the Sewers Maintenance and Subway Station buildings on the bottom left of the minimap.

Surface Map
By now you should have noted that the default map size is smaller (50x50 vs 75x75). I had to resize the maps down, because of the new maps for each district (sewers, subways, basements). I kept the same population per map tile ratio. Small maps have some nice side effects on the gameplay I quite like.
I also specialized districts more to counterbalance the small maps (eg about 80% of shops in a shopping district on average).

Music
Did new musics, including ambient musics for some maps (sewers, subway). One or two themes for each song, a simple structure with repeats, some arrangement between repeats and voilà. I could always try to improve them later, but I'm not a good musician.
That's Guitar Pro 6. It's great for guitar based music -hence the name-, but most of the other instruments are horrible or sound badly tuned. It's cheap for what it can do.


Graphics
Trying not to abuse the gradiant tool in Paint.NET, but it makes lighting much easier. Funny I hated doing graphics before and now I'm learning and I like it.


Police Station
What Police Station? You mean the one where that guy is jailed? I still have to do it...

End of post.

Sunday, July 11, 2010

Alpha 4 progress - Stuff I can't tell about

Alpha 4 features more content, and actual "things" to do if you want to. 

Stuff I can't tell about
There stuff are "secrets" to be found by the player, so I can' t tell or show much about it.

There is that one huge map you'll have to find by yourself, and do something here. Its a unique map, only one per game. Find it and do something for two achievements (later will be part of the plot and win conditions).

There is that creature that lives in the sewers. Its a unique creature, only one per game. Kill it for an achievement.


Those parts are done.

The player wil also have the possibility to meet a certain "someone", in a specific "place" and will get the choice to give help to this "someone" in exhange for "avoiding some kind of trouble", but that will put you into "some other kind of trouble". Eh.

That is not done yet.

Stuff I can
There are several new things, major or minor, to look for in this screen...

Polished sewers maps.

What you can't see is the sewers water animated and the junk thing floating up and down. Useless but fun graphics improvements.
Not much new about subways I'll try to make them a bit more interesting.


Hey, I wasn't supposed to show that one...

End of post.

Tuesday, July 6, 2010

Other (abandonned) projects II

(first part here: http://roguesurvivor.blogspot.com/2010/06/other-abandonned-projects.html)
Warning : bunch of AI mumbo-jumbo ahead, you should know a bit about searching and planning. I'm too lazy right know to properly explain the algorithms and terms.

* BadBowl - an attempt at "serious" AI
For the life of me I can't get this thing running again, so no ingame screenshots, just code.
I like screens because they show I actually did work and its not vaporware :)

Idea : Solo Blood Bowl - Human vs AI.
Environement : Java, Eclipse.
Status : Abandonned.

Designing an AI for a BloodBowl clone sounded fun, so I did it. I developped the game engine and the AI at the same pace. For instance I did not implement passing yet but there was an AI you could play already against with moving, blocking, scoring, special abilities etc...
Actually there was THREE different AIs engine. 

1. SimpleAI
Engine: Selective tree search with static pruning.

Why "Simple"? Well doing a search engine with pruning sounded simple enough as I was sure I could do it since  I already did chess engines for instance. I knew it would be probably bad and slow, but at least I knew I could do it. Just curious about the results.

I knew the search space would be insanely large so I did pruning at each level of the tree. In other words selective search with static pruning. As usual with these kind of approach, the idea being that "good" moves should get more attention than "bad" moves. It sounds much less risky than in chess for instance, because you are searching only your own moves, not the opponent, so less tactical blunders caused by ignoring some move lines.

I don't remember the details (how did I handle turnovers in the search, risk taking with probabilities etc..).
Here's the actual main search method code in Eclipse, arranged into one messy large picture:

As you can see its just a standard search with hashing and prunning.
The resulting AI was mediocre at best and the AI thinking was way too slow.
As usual with tree searches, it was hard to determine what was the weak point causing bad choices : the evaluation function? the search/pruning?...
So I did number 2...

2. BeamAI
Engine : Beam search of plans.

Instead of searching a tree, this AI maintains a list of plans and try to improve them. I read about it in some AI papers, mostly about a Diplomacy AI engine by a French guy, and it sounded great.
In this context, a Plan is a list of successive AI moves. Improving a plan means adding a move that makes the terminal position better. The plans are initially seeded with all or a selection of legal moves.
Sounded great, easy enough to do and easily debuggable since I could for instance print all the plans at all times to monitor the AI decision process.
I had the brilliant idea to write the algorithm in the comments of the code, much better than random code screens, so here it is with a bit of code :

It worked quite well, producing occasional flash of semi-brilliance and actual planning, but was very bad at handling risk taking (either too safe or too insane) and tended to gravitate around a main line (with only superficial changes like one square move difference), ignoring alternatives (poor space exploration, exploitation vs exploration dilemna as usual).
As usual, how to balance the search vs the evaluation... Annoying. Nice actual AI but annoying. Really.
I was fed up with search methods and the lack of control, so I did number 3...

3. RulesAI
Engine : Rules from a Rule Book.

Rules. They are simple, easily controllable.. but predictible and about as un-AI as you can get. But what the heck, it actually works.

1. Each pawn is an Agent. An Agent has a Rule Book. A Rule Book is a set of ordered Rules, from the most urgent/interesting one to the least important.
2. When the AI wants to play, it ask all its Agents what they want to do and the winner (the Agent firing the highest rated rule) does its action.
3. When asked to, the Agent checks its rule book, line by line, until a rule gets fired, and return the resulting action.

Very simple and you can tune a lot of things (for instance a "strategic focus" to arbitrary reward some agent or some kind of rule). If you order and design the rules correctly it produce surprisingly decent AI for a quite low CPU cost when compared to search methods.
Example  of a Rule Book with actual rules :

Individual Agent actions made sense, problem was coordinating the different agents... For instance when attacking I could easily outflank it like you would do against a novice player (move the ball to the center, fix the opponent there, then escape/pass to the wings).
So decent tactics (it did tackling and support very well) but mediocre strategy, which is kinda a classic for strategic games AIs...

* Ok but uh what about Rogue Survivor?
Rogue Survivor AI = KISS : Keep It Simple Stupid.
Its similar to RulesAI presented here, but with much more stuff "hardcoded" and no real engine behind it.
It kinda works because agents are not supposed to cooperate a lot and just do their own stuff.
I did a post about it.

Since you were brave enough to read all this crap, here's a super secret RS screenshot for you :

(that part of 4.0 is not completed yet)

End of post.

Friday, June 25, 2010

Alpha 3.2 Progress

Urgent bug fixes, balancing and CivilianAI improvements.

AI vs CPU : Fight!
I have to keep the AI code as simple as possible. Better AI often eats more CPU. The game will crawl if I do decent pathfinding and proper planning for all the actors. I want the game playable on low end CPUs such as mine ;)
I can do simple improvements that eat little CPU time, but you shouldn't expect "good" AI from 100+ actors.
I will reserve better AI for unique NPCs and player followers.

Simple AI  improvements
One of the AI improvement in 3.2.
Civilians will try to secure the room they will sleep in, as demonstrated in these screenshots.


Release?
Soon. Bug fixes are urgent, I can't have the game crashing left and right.

End of post.

Tuesday, June 15, 2010

Alpha 3.1 Progressaar III

(...Continued from previous post)

What the hell? That tard shouldn't have followed me tilll there.THE RAIN WAS SUPPOSED TO ERASE MY TRACKS!... Why?... Ha! I'm sure he smelled those two idiots instead. Damn them. I should have walled them alive.Whatever. Come in, I'm waiting for you!


aaaAAaa! Get out of my way IDIOT! He's chasing me! WHAT? I feel so sleeeeepy! AAAaHAHAA!! ME SLEEPY? LUCIA HELP ME!! LUCIA!! FRIEND! ?!? DAMN I HATE PEOPLE IeeieeeeeeeEAezpaiepzkepakrhmhgh H. .. mh;ghM................

Graveyard
ROGUE SURVIVOR alpha 3.1
POST MORTEM
Alison Collins was a woman and a civilian.
She survived to see day 3 hour 03.
Alison Collins's spirit guided her for 39 minutes 30 seconds.

> SCORING
She scored a total of 4831 points.
- difficulty rating of 100%.
- 4506 base points for survival.
- 325 base points for kills.
- 0 base points for achievements.

> ACHIEVEMENTS
Didn't achieve anything notable. And then died.

> DEATH
Killed by zombie master zombie master79 in Shopping District@3-2 at Grocery@6-34.

> KILLS
  11 skeletons.
   1 zombie.
   2 zombie masters.

> SKILLS
Started with Leadership.
1-Leadership.
1-Light Sleeper.
1-Agile.
1-Light Eater.

> INVENTORY
- 20 light pistol bullets.
- a pistol (equipped).
- 12 light pistol bullets.
- a pistol.
- 20 light pistol bullets.
- 20 light pistol bullets.
- a hardened leather jacket (equipped).

> FOLLOWERS
She was doing fine alone. Or everyone else was dead.

> EVENTS
- day 0 hour 00 : Woke up in Business District@2-2.
- day 0 hour 00 : Sighted first woman.
- day 0 hour 00 : Recruited Lucia Steward.
- day 0 hour 01 : Sighted first skeleton.
- day 0 hour 02 : Sighted first zombie.
- day 0 hour 02 : Killed first skeleton.
- day 0 hour 03 : Killed first zombie.
- day 0 hour 05 : Sighted first man.
- day 0 hour 06 : Learned skill Light Sleeper.
- day 0 hour 06 : Lucia Steward learned skill Strong.
- day 0 hour 06 : The weather stayed Rain.
- day 0 hour 07 : Sighted first man.
- day 0 hour 07 : Sighted first zombie master.
- day 0 hour 08 : Killed first zombie master.
- day 0 hour 13 : Entered district Shopping District@3-2.
- day 0 hour 13 : Visited Shopping District@3-2.
- day 1 hour 06 : Learned skill Agile.
- day 1 hour 06 : Lucia Steward improved skill Leadership to level 2.
- day 1 hour 06 : The weather stayed Rain.
- day 2 hour 03 : Bikers raided the district.
- day 2 hour 06 : Learned skill Light Eater.
- day 2 hour 06 : Lucia Steward learned skill Carpentry.
- day 2 hour 06 : The weather stayed Rain.
- day 2 hour 07 : Sighted first zombiefied man.
- day 2 hour 07 : Sighted first ***SPOILER***
- day 2 hour 07 : Sighted first zombiefied woman.
- day 2 hour 09 : Follower Lucia Steward was killed by ***SPOILER***!
- day 3 hour 03 : Died.

> CUSTOM OPTIONS
- difficulty rating of 100%.
- Simulate when Sleeping : no.

> R.I.P
May her soul rest in peace.
For her body is now a meal for evil.
The End.

Alpha 3.1 release?
Alpha 3.1 should be released before the end of the week, possibly as soon as tomorrow.


End of post.

Alpha 3.1 Progressaar II

(...Continued from previous post)

Ok now your turn. Try to heal those wounds while you're at it. And do NOT drop blood on the sheets and mattress. I HATE that. I dragged this bed all the way here just for YOU. Understand? Now sleep. I'll shout if I see a Big Bad Zombie.

Great. Zombies tards. Look Lucia, would you distract them while I'm searching for food. Be useful for once. There's a cop. He's undead but he might be still a cop somewhere in his roting brains. Try to negociate or something. Yes with your body if you need to. Bye. See you around the corner.

I knew it. Lucia you were useless till the end. From Sleepy to Undead. Idiot.

Got some ammo and food. The shotgun ammo is useless now but might come handy when I find a shoty. For now I'll reinforce the shop entrance.

 Haha. That stupid cop traded some planks for a bunch of munitions. Thank you sir. I feel like Bonnie. Or was it Clyde? Anyway I got guns and ammos. Those zombo tards can come haha. Lucia? Where are you? Haha.

(Continued...)

Alpha 3.1 Progressaar

Progress + (quick'n'dirty) AAR = Progressaar.

New command : City Info
Looks bland but that's a beginning. More stuff to go there in future versions.

New command : Message Log
Useful is you missed something.


The Wonderful Adventures Of Alison "Me First" Collins and her friend Lucia "Sleepy" Steward
I order my friend to guard me while I sleep. I suddenly wake up. The little blonde panics. She probably saw something in the south or east rooms. My friend Lucia is sleepy and too tired to see far enough. Anyway it was just a skeleton, quickly dispatched.


I dragged the bed under the rain into our improvised shelter. There are two other people in the grocery shop. I saw them eying our precious food so I walled us in. Survival of the fitest. I care only about Lucia. She's sooo sleepy. Always was. That's why I'm in charge here.


Listen Lucia. You're sleepy. I'm ALMOST sleepy. We can't be both sleepy at the same time, can we? So you guard ME. Just patrol our little room while I sleep. Please don't make noise unless it's really important. I'm a Light Sleeper you know. What? Those two people behind the wall? Ignore them. You don't need them. I'm your only friend you know. Now shut up. I sleep.

(Continued...)