Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - Azathotep

Pages: [1]
1
Programming / Dijkstra Map
« on: September 24, 2013, 10:20:34 PM »
I can't figure out the safety behavior from:
http://roguebasin.roguelikedevelopment.org/index.php?title=The_Incredible_Power_of_Dijkstra_Maps

m is a monkey that needs to flee the approaching player.

So first I do this:
"Start with a Dijkstra map calculated around goal points at the player's location and at any player allies from which your monsters will also want to flee."
Which produces this:

Code: [Select]
#   #  #   #  #  #   #   #  #

@  1   2   3   4   5   6   m  #
                         
#  #   #  #    #   6   #  #  #

               #   7   #

Then it says:
"Multiply every value in the map by a negative number somewhere in the neighborhood of -1.2"

Code: [Select]
#    #    #     #     #    #   #   #   #

@ -1.2 -2.4 -3.6 -4.8 -6 -7.2  m   # 
                         
#   #    #    #   #  -7.2  #   #   #

                  #  -8.4  #


"Take the result and pass it back through the Dijkstra scanning function. "

That's what I am stuck on. The scanning function involves:
"If any floor tile has a value that is at least 2 greater than its lowest-value floor neighbor, set it to be exactly 1 greater than its lowest value neighbor."

But how will that ever be true? How will any tile be at least 2 greater than its lowest-value floor neighbour when I have multiplied them all by 1.2?

As it stands the monkey is just going to sit in that dead end as the player approaches rather than jump out and flee to the south.

I suspect I've misread something and got the wrong end of the stick concerning the -1.2 multiplication and the rescan. But I've read it again and again and nothing springs to mind.

2
Design / Hidden Uses of Items
« on: September 21, 2013, 07:33:38 PM »
Despite this
"Oh the 'i' key, that's bound to the ironing action. You'll need to find an iron and an ironing board first of course, and a shirt to iron. Very useful towards the end of the game when you run into the monster that cannot attack anyone wearing a crease-less shirt"

And this
"You know you can identify them by dropping them in a sink? Shit man didn't you know that? It's kind of obvious. It's a sink! You know rings/sinks. Seriously you don't know about rings and sinks? Well what did you think the sinks were for"?

I still think hidden item uses can be make a game interesting. I have written a short blog post aimed at non-roguelike players to convey how roguelikes can offer intelligent decisions when it comes to using items. I know that generalizes and so is a bit misleading.
http://www.creepyshoebox.com/use-of-items

Some examples where I think it works:
-In nethack where you could carry a cockatrice corpse. If you see what touching a cockatrice does it's not that far a step to think about using one as a weapon. Of course you need to wear gloves, so that's another use for gloves.

-In brogue you can throw a potion of descent at a monster to make it fall to the next level, so it's a neat way of getting rid of threats. That's more intuitive.

I guess I am talking about items having secondary effects, uses other than the primary use they are in the game for.

-There's also cool fatal stuff, that has no real use (so this is not the same thing?) but is interesting like putting the lutefisk cube in the lutefisk cube in dredmor. Or putting on an amulet of strangulation in nethack.

I haven't played a lot of roguelikes but nethack is the only one I have played which has a ton of this kind of item interaction...although too unintuitive. I was expecting all the different cheeses in dredmor to do something until I found out it was a joke....and crafting isn't the kind of thing I am thinking of, that just produces more items.

I was wondering what people's thoughts are on this kind of item interaction aspect of roguelikes? Is it a bad idea, is it better to make interfaces less complex, with less actions?


3
Programming / Porting to other platforms - how to test?
« on: September 14, 2013, 12:04:23 PM »
I am currently building stuff under Windows and was thinking of how to port to other desktop operating systems like OS X, Linux and Atari DOS. Possibly even Android and iOS (although I doubt it, but I am interested in hearing how it would be done). If I had a macbook or something it would be fairly easy to mess about getting stuff to run on that system, but I don't. I was wondering what the best method is for porting and testing the ports work given that I have an aversion to effort. I came up with a list of a few possibilities but how do other people do it?

1. Write the game in a cross-platform language in the first place where you don't really have to bother (eg Java) about testing it on other platforms because it should just work, or something.

2. Cross-compile the game for other platforms but never test that it works on those platforms. Ask other people familiar with those platforms to test it for you, or even let angry players inform you it doesn't work. As soon as someone reports it does work then continue with the philosophy that it will continue working as long as you only make changes to the game code not the setup stuff.

3. Actually buy hardware (!!) or dual boot for different platforms and learn (!!) those platforms, eg how to use the desktop, how to compile on them, how installers should work on them, etc (this would take a long time? or is this a case of "tough shit, just get on with it")

4. Create virtual machines for other platforms. Will virtual machines come close enough to the real thing (eg graphics acceleration if I use a framework that uses opengl or directx to render tiles?). Same thing though, you have to learn all these other platforms, eg how they tick at a basic level.

5. Don't bother porting unless people complain there's no Mac or Linux version. afterall what's the point in porting if people don't ever play the port? but then there's a chicken an egg, they can't play it if you don't port it.

4
Early Dev / TempRL
« on: September 13, 2013, 07:10:21 PM »
Finally a game in which you can play as a red pixel. Experience life as a red pixel scouring an eight level dungeon for the artifact known as the Game Completion Objective.



https://github.com/Azathotep/TempRl/releases/tag/v0.1

What I've done is taken an old map generator experiment I had and put a game over the top of it just to get a game out. So it's a bit simple and rough. There's no combat, you generally run away from any enemies and have to work round them. There's no skill tree or items either. You just have to find the stairs on each level and finally on the 8th level find the GCO.

Zip file: https://github.com/Azathotep/TempRl/releases/download/v0.1/TempRL_v0.1.zip

It's in C#. The source code is open source (although perhaps it's closed source in the sense that it's such a mess). I like C# but the big flaw about it is that the game:
1) Only runs on windows
2) Requires .net framework 4 to run. I think most windows machines have that installed (?) but in case I put the .net 4 framework installer in the zip.

I can hopefully solve both problems by adding an installer and figuring out how to use mono to run C# on linux and ios, but for now I am just putting it out as windows only, sorry :(

Pages: [1]