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 - RogueMaster

Pages: [1]
1
Other Announcements / This is bugging me pretty bad...
« on: December 12, 2012, 03:59:19 PM »
I'm now in a point where I'm not sure if the game I'm currently finishing is really a Roguelike, an ASCII-RPG or a Roguelike-like.

I have been reading this thread:
http://roguetemple.com/forums/index.php?topic=1403.0

If you are not up to read it all, it's basically a flame discussion abour Legerdemain, is it a RL or not.

Also, it's mentioned the Berlin Interpretation, that is somehow accepted by the @'s community as a standard for knowing if XXXXX game is a RL or not.

So, my game is actually more close to Legerdemain than Rogue, if we talk strictly.
I habe been working on it for around 9 or 10 months, und still need many things to tweak, finish and polish, betatesting, blah blah blah...

According to the Berlin Interp., the game:

1.- Random environment generation
......Maps are PREMADE in human-readable format, i.e. not random generated
......Items absolutely random generated. (using basic patterns a.l.a diablo)
......Monsters absolutely random generated. (using basic patterns a.l.a. diablo)
......Also there is a lot of randomness in the game in many other aspects that don't event the most pure Roguelikes have.

2.- Permadeath
......It's available a 'roguelike' mode with permadeath and an 'adventure' mode without it. (Nethack has this setting available too)
......Even in adventure mode, it is possible only to have ONE character at once, since only one savegame will work.
......Dieing in adventure mode doesn't mean permadeath but the character will have some gold loss, exp loss or something, I have to decide, so dieing is something that should be avoided.

3.- Turn-based
......Yes

4.- Grid-based
......Yes

5.- Non-modal
......Yes and no. Yes because everything is worked out in the 'game' screen, EXCEPT combat, that is final fantasy-ish, more or less.

6.- Complexity
......A lot. Actually, this point is what I am proud of it. The game is absolutely complex, with many factions, currencies for different kingdoms, a lot of quests and sidequests, a lot of places to explore and a lot of player freedom, each player class has his own completely different background story and aims, quests can be dynamically modified by other events or quests... Basically there is a lot of complexity.

7.- Resource management
......Yes. A lot. There is food, there is water. Money is hard to find and use it wisely. Inventory space is very limited. There are a lot of different items, from weapons and armors to books, potions and many artifacts that may not have an obvious or immediate use or that they may look just decorative (and may have an use... or not). It is the player management efficiency which will make the difference.

8.- Hack'n'slash
......Yes and no. Combat is one important part of the game, but not the most important and not the goal of the game.
......There are many fights, but not every 10 seconds, and not one every 30 minutes. I think it's quite balanced.

9.- Exploration and discovery
......A lot. Actually, there are around 50 maps (some unfinished), with a lot of dungeons, caves and places to explore that are absolutely optional. There are sidequests that can lead to interesting discoveries. Many items will require the player to explore and find what such item is used for.
......But since maps are not random generated, playing the same several times with the exact same class and following the exact same steps, will be like playing the exact same game.

and minor points:

10.- Single player character
......Yes

11.- Monsters are similar to players
......Yes. They can cast the same spells as the player could and attack the same way as the player could.
......They no have inventory, but maybe I do it somewhere in the future.

12.- Tactical challenge
......Actually, a lot. Everything in the game requires some kind of tactic, planning and think-before-act. Of course, not for the most common actions.

13.- ASCII display
......Yes. It uses a tileset system. Default tileset is made of some nice 1-bit (black&white) sprites, but anyone can chance the sprites for ASCII chars or 4chan memes or whatever he wants.

14.- Dungeons
......A lot.

15.- Numbers
......A lot of numbers are revealed to the player in the character sheet.


So, is it a roguelike, a roguelike-like or just an ASCII-RPG?

2
Programming / Maths for a good, balanced and interesting semi-roguelike
« on: December 09, 2012, 03:32:56 PM »
I'm almost finished my semi-RL project, but I'm missing an important part:

the maths behind the game, is what is producing me headaches.

The game is mostly stat-based. Player stats need to be carefully planned. Each lvl the player receives some stat points to distribute.
There are no "different" classes. This is, the player starts with a specific profession like could be warrior, mage or rogue assassin. Depending on the starting class, he will start with different spells/skill and different predefined stats, but he can access to everything in the game if he met the appropriate prerequisites, such as a warrior can cast fireballs if he learns how to do so.

Specifically, classes only define the starting stats, items and skills, and also the game story and starting map.

Experience will be usually won by slaying monsters. Experience to level up increases each level, at lower levels it increases little, but for later levels increases a lot.
It's not a coffeebreak rl. It's needed relatively much time to beat the game.
Minimun level = 1, max level = 30 or 35, maybe 40.

With all that info we can continue.

Actually I got several problems:

1) The Experience system: how should I calculate the experience given to the player? Using monster's health? monster's level? monster's subjective difficulty? totally random? I'm not sure on how to base experience wins, and which formulas would be the best for scaling experience gains in a realistic and interesting way.

2) Monsters' difficulty. How? I need a good way to scale and calculate the monster's difficulty. I am interested in a semi-random monsters' stats and skills generation, but a dragon will be always a true challenge. They can be beatable, but the player needs serious strategy. Also, a Dragon lvl 10 is weaker than a Dragon lvl 50, and even when the player is level 40, I want him to don't want to meet that lvl 10 dragon. Basically, I want some monsters prototypes with an overall power that gets scaled in harder maps, so monsters that are easy to kill, they are always easy to kill, and fearful monsters are always fearful, although low level fearful monsters are less fearful than their high level counterparts.

3) I got another question but I have just forgot it...


Well, thanks in advance, cya.


[EDIT]

I remember now the other question:

3) This is, i think, the most complex thing. The critical and dodge chances. Actually they are based on agility stat. When the player assigns points to agi, crit and dodge increases. So far, this is ok. But I need a system where crit% and dodge% is affected by player level. I mean, if the player never puts points into agi, the crit and dodge will decrease. So, player that never put points into agi will see their dodge and crit being decreased each level. But players that want a crit ro dedge based character, need to really invest into agility, so they compensate the level loss. Briefly, crit% and dodge decreases each level. Because crit and dodge could be a very powerful thing, I want that players investing into it can get a really nice crit%, maybe 35% or 40%, but they need to focus heavily into such stat.
But in the other hand, there are players that are not interested in crit or dodge, and they will get pretty low on them. BUT I don't want to reach zero on it.

Basically, crit% decreasing each level is cumulative. Each level, the player needs to invest more into AGI to compensate the crit% loss, so getting high crit% requires equipment with AGI. So, +1 AGI gives +1% crit, for example, but at level 2, crit% is reduces by 0.1, at lvl 3 by 0.2 and at level 20 reduced by 1.5%, for example.

But additionally, the crit% never gets lower than a certain value. It's like the crit% has both limits, one superior and one inferior, and reaching any of them is harder when you are closer.
I'm not sure if using logarithms here would give good results, or there is already an easy way to do this with a simple formula.

3
Programming / Need more monster names
« on: December 14, 2011, 12:27:56 PM »
So far, I got this monsters list, but I'm not sure if some are missing.
If you remember one missing here, I would thanks you to write it's name.
I would prefer fantasy ones instead of animals, but animals could be ok. Compound names are also ok.
Also, please don't tip me names based on those monster, i.e. megazombie, hyperscorpion, etc...

Spider
Rat
Cat
Dog
Wolf
Fox
Bat
Zombie
Slime
Skeleton
Thief
Bandit
Goblin
Orc
Elf
Dwarf
Gnome
Bear
Boar
Falcon
Deer
Lion
Pantera
Bull
Spectre
Gelatinous Cube
Animated Armour
Animated Sword
Mummy
Archer
Ghost
Demon
Revenant
Imp
Shambler
Ogre
Wizard
Devil
Ninja
Samurai
Kamikaze
Valkyrie
Demigod
Fighter
Fire Elemental
Air Elemental
Water Elemental
Earth Elemental
Djin
Genie
Dragon
Fiend
Shaman
Golem
Bee
Sprite
Treant
Gazer
Beholder
Serpent
Assassin
Priest
Templar
Crab
Spirit
Ant
Horse
Wasp
Wraith
Scorpion
Spider
Succubus
Giant
Ghoul
Vampire
Witch
Sorceror
Necromancer
Warlock
Ogre
Minotaur
Cyclops
Gnoll
Troll
Chimera
Pegasus
Harpy
Kraken
Lich
Hydra
Gorgon
Basilisk
Cockatrice
Phoenix
Mermaid
Rhyno
Kobold
Abomination


Thanks a lot.

4
Programming / Spells data format
« on: December 08, 2011, 04:35:19 PM »
Hi.

I'm trying to implement a spell system where the spells' data is stored into a human-readable text file following a format like this:

Spell_Name:Spell_Type:Arg1:Arg2:Arg3:Arg4

Then I read each line and call the different functions with the defined arguments.

So far, it seems to work well but I guess if there is a better way to store the spells data so other players can create or modify existing spells.
I also tried using an Excel database, but that doesn't allow easy editing for players or modders.

The same happens when storing the spell data as binary data: impossible to edit by players.

Another problem is for those spells that does not follow that exact same format, for example spells that produce more than one effect, for example damage + slow.

The file format i wrote before doesn't allow to set different spell types at the same spell.

Thanks so much.

5
Programming / Help with AI system
« on: October 03, 2011, 03:10:35 PM »
Hi there.

I have some problems when trying to find an appropriate AI algorithm for the turn-based battlefield combat.

I was thinking about some chess AI, minimax and other, but they are not for this kind of game.

What i need the AI to do is, for each of its units:

- Avoid fighting enemy units if he can't win (this is pretty easy to do).
- Avoid walking on cells where he will probably die (a cell threatened by one or more units that will kill him)
- Attack enemy unit he can defeat but WHITOUT losing much health or being worthless victory (eg, do not use the Troll to kill a rat, if a Dragon is protecting the rat)
- Decide if cast a spell to kill enemy units, move a certain unit or summon a new one (this is, which criteria could I use to decide this?)


It's easy to implement every of them, but the problem comes when trying to make the correct decision in the correct time.
Any tip on this?

Thanks in advance.

6
Programming / I need sound artist
« on: September 28, 2011, 02:35:50 PM »
Or someone who can create sound effects and music for the computer internal speaker using the next table:

Code: [Select]
        Octave 0    1    2      3      4      5      6      7
        Note
        C        16   33   65  131  262  523 1046 2093
        C#     17   35   69  139  277  554 1109 2217
        D        18   37   73  147  294  587 1175 2349
        D#     19   39   78  155  311  622 1244 2489
        E        21   41   82  165  330  659 1328 2637
        F        22   44   87  175  349  698 1397 2794
        F#      23   46   92  185  370  740 1480 2960
        G        24   49   98  196  392  784 1568 3136
        G#     26   52  104  208  415  831 1661 3322
        A        27   55  110  220  440  880 1760 3520
        A#     29   58  116  233  466  932 1865 3729
        B        31   62  123  245  494  988 1975 3951


For example: BG#FEAC#
The duration must be in miliseconds or seconds. you can specify another strip of numbers each representing the duration of each note: 500,300,1000,100,650, etc...

What i need exactly is someone who can compose using such table (i don't mind if he says me the musical note name or the numeric code) the next music and sounds:

-> A Medieval Dungeon Door opening sound
-> Some kind of background dungeon sound (chains dragging, background laugh or any other abstract sound)
-> Some kind of background cave/mine sound (water drips, earth crackles, bats screech, etc...)
-> A sound to be played when the player tries to move towards a wall
-> A sound to be played when the game gives a normal reward to the player (gold, normal magic item, finishing a quest, etc...).
-> A sound  to be played when obtaining a really nice reward (a very large amount of gold, an epic item etc...)
-> A sound when the player loses (not a dieing scream).
-> A **short** game titlepic music that sounds somehow epic. Game is medieval theme, there are large battles, dungeons, caves/mines.


That's all. Thanks in advance.

7
Programming / Cave map 'theme' ASCII symbols & colors
« on: September 22, 2011, 12:21:11 PM »
Hi there.

Sorry for all those post i opened, but now i need some advice or opinion about which ASCII symbols and colors would you implement or want to see in a cave map. Choose one of those in the next images or specify another different theme. Remember it's a cave map, not a dungeon:




The walls in B, D, F and H are any ASCII character between 176 and 178.
The brownish color doesn't have to be exactly that color.


Right now, about the viewing algorithm: which would you use for this kind of maps?

Would you use 360º Raycasting , 360º Fov, or maybe Linear Raycasting/Fov?
This is, player can view all around or only what's in front?
Will player be able to see 'through' walls (FOV) or every wall will block the view behind it (Raycasting)?
Or will you implement a 'full-revealed' map?



And about monsters: will you use color coded monsters? Or every monster will be white/grey? or monsters the same color as the map color?




And finally, about HUD design:
Health bar = red, mana/energy bar = blue, but which color could describe better a 'lamp fuel' bar? (the grey part is the depleted part)
Also which ASCII symbol would you use to represent the bar itself?
ASCII 254: Health: |■■■■■■■■■■■■■■|
ASCII 219: Health: |██████████████|
ASCII 178: Health: |▓▓▓▓▓▓▓▓▓▓▓▓|
ASCII 61: Health: |============|

In my oppinion, i think ASCII 254 and 61 are the best one since it's easy to see how much left because you can count the units left and depleted, but 254 looks better than 61.
Or if you have anything better please specify it.

Now, would you include the real value of the bar?
Health: |■■■■■■■■■■■■■■| 60%
Health: |■■■■■■60%■■■■■|
Health: 60%|■■■■■■■■■■■■■■|


More about HUD:
The basic elements are: message log (monster hits you, you kill monster, you pick gold, etc...), Stats bar (HP, energy, fuel), temporary/permanent status (poisoned, cursed, burning, blessed, blinded, Stone Skin, etc...), map name and depth, gold coins and clock.
Any other non decorative element is also absolutely necessary?


That's all. Thanks in advance.

8
Programming / Your oppinion about 2D Mining System
« on: September 21, 2011, 06:01:40 PM »
I'm interested in community's opinion about the most enjoyable way to simulate a mine map where the player is able to manually mine through #'s.

Thanks in advance.

9
Programming / A Good Drop System
« on: October 27, 2010, 02:24:12 PM »
Sorry for this serie of (annoying) questions I'm writting here, but since this is the first roguelike I ever make, I want it to be pretty decent.

I need right now to polish it b4 release, and something that I need to do is a decent random drop system.
I explain: when monsters die, they drop (or maybe not) a certain item from the "list of items".
Right now i just implemented a simple "generate random number and drop such item".
I want a better way to do this, since I want to make items to have a certain chance of drop, so it's hard to get an "epic celestial angelical allmighty scythe of destruction +20", and so on.
With the current method (i know it's pretty crap) that can be dropped from a rat or from a godlike monster.

I though about adding to the items a propertie "DropPercent", but this also means that i need to add to the monsters a propertie "DropModdifier", that modifies the absolute drop chance, so certain monsters can't drop "epic" items.
But I don't know if this is the best way to do go, or there is an universal or better procedure.
Before start coding this, I would be interested in some oppinion and tips about dropping methods that you know, his advantages, disvantages, etc...

Thnx in advance.

Tschüs.

10
Programming / Looking for an ASCII artist...
« on: October 26, 2010, 08:17:23 PM »
... that can make a logo for a Roguelike i'm almost finishing.

I need someone that can do something in this style:

http://aa-project.sourceforge.net/gallery/krizik.png

This is, a complex ASCII "draw", not just using a single character.
Of course, not that face, just the name of my roguelike (that only such person will know until release date).

Danke Schön.

11
Programming / Prefered LOS Type
« on: October 19, 2010, 05:38:00 PM »
A thread to ask all RL community what's your prefered LOS Type.
This can be help new RL Developers to make something that is more accepted by the community and makes more players happy :-)

You prefer:

- LOS surounding the @, for about 4, 5, or 6 squares wide. (ADOM)
- LOS like an unidirectional sight. You only see what you have in front of you. (I see this once, don't remember where).
- LOS like the first of this list, but only 1 square wide, but leaving a FogOfWar effect. (LARN, but adding fog of war)
- LOS in a multidirectional sight. Like 2nd in this list, but for 360º. (Dw.Fortress)
- LOS of 1 square far in corridors, but reveals the whole room that you newly enter. (Rogue)


What one would you like to see implemented in the next Roguelike to be released?

12
Programming / Best way to store the RL data (during runtime)?
« on: October 18, 2010, 06:20:39 PM »
Hi @'s

I'm developing a Roguelike, nothing really special, and I came to a point where I don't know what method should I use to save the RL Data during runtime.

I explain: right now, i'm using various UDTs (User Defined Types) to save the player, map, monsters, items...

The problem comes with the "savegames". A really headache, you know.
I read the article in roguebasin about savegames, but didn't clear much.
The first problem is that i cannot save the data as plain text since it's too much data, and also UDT's into UDT's, and Arrays of UDTs. It can be a hell to save all as plain text.

But if I save the data as binary data, the  problem is that the UDT's into another UDTs are not saved, since they are not really part of the second UDT, but pointers to data.
I can save the inner UDTs first, then go saving outer UDTs, but that can bring another problem: knowing where stop and where start reading data for arrays of UDTs!!!.

Some simple example to clear this out:
__________________________________________________________
Type ThingType
....thingName as String
....thingValue as UInteger
End Type

Type PlayerType
....health as UInteger
....mana as UInteger
....inventory(10) as ThingType
End Type


Dim as PlayerType player
__________________________________________________________________

Then, what method should I use to save the "player" variable, in this example?
If I simply make a "Put #1, ,player", only the UIntegers data is stored correctly, but the data refered by inventory(10) is not the real data, but pointer values and whatever...

So, any tip about savegames?

I'm using FreeBasic version 0.20BETA (i know there is now 0.21, i must retrieve it).

Thanks in advance.

Pages: [1]