Temple of The Roguelike Forums

Game Discussion => 7DRLs => Topic started by: mathpunk on March 09, 2017, 03:45:47 AM

Title: [7drl 2017] Rogue, Fighter, Mage in: the Goblin Caves [Finished]
Post by: mathpunk on March 09, 2017, 03:45:47 AM
Rogue, Fighter, Mage in: the Goblin Caves

You control a party of three characters in their quest to kill the Goblin King. This is a fantasy roguelike, with an intricate system of magic spells and combat. Each of your three characters has strengths you'll have to play to and weaknesses you'll have to work around. The Goblin Caves are treacherous: full of secrets, traps, monsters and powerful magic.

On the technical side, although RFM is a traditional roguelike in flavour and theme and in the basic language of the game (you'll use 'w' to wield weapons, 'a' to wear armor, etc), it experiments with roguelike mechanics to create a tactically rich adventure.


This game was made for the 7drl 2017 challenge. Builds for Windows, macOS and Linux are available.

Download

Version 1.1c (March 15th 2017) github (https://github.com/RogueFighterMage/RogueFighterMage/) downloads:

IMPORTANT

If you're delving in before reading the Player's Manual, here are the only things you need to know:

Press TAB to change characters. Press SPACE to end your turn. Press ENTER to resolve pending events. You can shoot (press x), cast spells (press c) and read scrolls (press r) and change characters even if there are pending events. Hold ? for a list of commands. Normally, you can't move around enemies that you are fighting: you have to retreat by moving orthogonally away from them (there are some exceptions).

7DRL

I released a 7DRL version on March 12th 2017 github (https://github.com/RogueFighterMage/RogueFighterMage/) downloads:
The 7DRL version has some issues on higher resolution monitors, and also must be run on the command line with the current directory set to the same directory that the executable is in. Version 1.1c builds are the same as the 7DRL version contentwise (even down to the bugs), but with display issues fixed, and support for Linux and Windows. The latest version is always available on itch.io (https://mathpunk.itch.io/rogue-fighter-mage-in-the-goblin-caves) and here. The next version will fix the known issues (listed below) and add some more spells and enemies, and gameplay tweaks to improve flow.

Basic Commands

Screenshots

A summon spell is countered.

Quote
(http://i.imgur.com/Qb8UzyR.png)

Mage and fighter unleash a volley of arrows against an unsuspecting group of goblins.

Quote
(http://i.imgur.com/XDgKVgF.png)

Mage is in a magical duel with a vampire, and Rogue has been slain by an arrow to the head.

Quote
(http://i.imgur.com/DFTkB0F.png)

Updates

  - Fixed problems with large monitors. (Although you may still want to run in windowed mode on a large monitor, by passing the "--windowed" command line argument).
  - Made it so that the executable can be run regardless of what the current directory is set to.
  - Codesigned the mac binaries.


Known Issues

These problems are known to exist for version 1.1c.
Title: Player's Manual
Post by: mathpunk on March 10, 2017, 11:50:42 AM
Priority System

When you cast a spell, fire an arrow, or when an enemy comes into view during the enemy's turn, or when a trap is sprung, you gain priority. This is indicated by a green bar at the bottom of the screen, and the addition of an event to the "Spells & Arrows" column. You can then 1) press ENTER to try and resolve the event OR 2) queue up additional events.

While you have priority, you may cast additional spells, fire more arrows, or perform a small set of other actions (for example, if the Rogue has the quick draw skill, he may wield a bow or knife, and the mage may turn a page of her spellbook). If you perform any of these actions while you have priority, you will maintain priority. The number of actions you can perform is limited only by concerns such as the amount of magic you have available, or the firing rate of your bow (and also by the fact that you can only perform this limited set of "instant" actions: you can't move, or get items, for example). Once you've decided to stop performing actions, you must yield priority to attempt to start resolving the events that you've queued up.

To yield priority, press ENTER. When you yield priority, if you didn't queue up any events since the last time you gained priority, then the first event will resolve. Otherwise, if you have queued up events, then enemies will once again get a chance to queue up some additional events if they can and want to do this (i.e., they can respond to your responses).

The bottom line of the mechanic is just this: whenever you have priority, do as many actions as you want and can do, and then start pressing ENTER to resolve them one at a time. Each time you press ENTER, either the event will resolve, OR an additional event may be queued up (the latter will happen if an enemy responds to your event). IF you want & can respond to that additional event, do so, otherwise just keep pressing enter.

Example: It is your turn, and Mage casts magic missile targeting a goblin shaman (press c, select magic missile by pressing the corresponding number key or by clicking on "magic missile" with the mouse, then select goblin shaman with the mouse). You gain priority. You try to resolve the magic missile (press ENTER). Then, instead of allowing your magic missile to resolve, the goblin shaman casts counterspell targeting your magic missile. Now, you will once again gain priority and the "Spells & Arrows" column will display "magic missile" and "counterspell". If you move your mouse over "counterspell" you can see that it is targeting "magic missile" (this is also indicated in a message). You can try to cast a counterspell of your own targeting the goblin shaman's counterspell, but maybe you don't have enough available magic. That means you'll have to let the goblin shaman's counterspell resolve (press ENTER). The counterspell resolves and the magic missile is countered. Now there are no events on the stack, and your turn resumes normally.

Spellbook Manipulation

Every magic user has a spellbook with a certain number of pages (Mage's spellbook starts with three pages). The runes of 3 or 4 spells are written on each page. If a magic user has enough available magic, he or she can cast spells from the page that the spellbook is currently open to (press c). The amount of available magic required (the magic cost) of a spell is written next to the name of the spell in all menus, indicated by a number of plus signs.

If there are no spells left on the current page of a magic users' spellbook, or if none of the spells are currently useful, the magic user can turn to the next page of their spellbook (press t). This can be done instantly, but usually only once per turn. Magic users can never turn back to previous pages of their spellbook, although there are some ways in which the previous pages can be recovered (for example, if Mage is on the last page of her spellbook, and a paper monster lands an attack on her, the last page of her spellbook will be destroyed, and she will now have her spellbook open to the second last page).

There are several ways to add pages to a spellbook, for example by casting spellbind. This spell targets a scroll that the caster is currently carrying, and binds the scroll to the end of the caster's spellbook. This new page will now carry up to 4 copies of the spell inscribed on the scroll. The precise number of copies depends on the magic users' level, and the level of the scroll being bound.

Some spells and effects can cause the pages of a spellbook to be reordered, or the contents of a page of a spellbook to be changed. Combining this with spellbinding allows magic users to efficiently cast the spells they desire.

Full Commands


      ARROWS/ijkl - move
      o - open door
      O - close door
      w - wield
      W - stop wielding
      a - wear
      A - stop wearing
      x - shoot
      d - disarm trap
      g or , - get item
      c - cast spell
      r - read scroll
      t - turn page of spellbook
      G - drop item
      SPACE - end turn
      TAB - next character
      SHIFT+TAB - previous character
      RETURN - yield priority (lower green bar = you have priority)
      DELETE - show inventory/statistics
      ~ - view message backlog
      ? - help (this menu)
      F1 - main menu
      Ctrl+VI - toggle vi movement
      Ctrl+C - quit
Title: Cyclopedia - Floor 1
Post by: mathpunk on March 10, 2017, 04:37:56 PM
Cyclopedia - Floor 1

This chapter provides a complete description of all monsters, items and spells that can spawn on the first floor of the Goblin Caves. Spoiler warning!

Monsters:

Spells:

The following spells can all be found on the first floor of the Goblin Caves. The amount of magic expended for each of these spells (the magic cost) is listed beside the name of the spell in brackets. If the spell can be found on a scroll as well as in a spellbook, this is indicated by a question mark after the magic cost.


Items:

These items are found in your starting loadout, wielded by monsters on the first floor of the Goblin Caves, or scattered about those corridors.

Blade Weapons

All blade weapons deal extra damage against unarmed opponents, or opponents that are not themselves wielding a blade weapon of their own. Blade weapons can also be used defensively to block or ward off attacks. Wild animals (such as the wolf or owlbear) are particularly susceptible to attacks from blade weapons.

Ranged weapons


Miscellaneous


Armor

Scrolls

The following scrolls are available in the initial loadout.


Skills

Rogue starts the game with two of these five skills:

Title: Technical Notes
Post by: mathpunk on March 11, 2017, 06:45:58 PM
Technical Notes

Floor Design

The Goblin Caves are a maze of interconnected rooms and cooridors. Each floor is a compact 66 x 47 tiling of squares, with walls possible only on the edges of the tiles. The floors are generated using a random graph based context free grammar [1,2]. The organization of the levels takes some inspiration from the Hero Quest board game (the full Hero Quest board even has positive probability under the grammar).

Here's an example of one of the floors mapped out using a scroll of magic mapping:

Quote
(http://i.imgur.com/whElWaP.png)

Troubleshooting

[1] Mcguinness, C., Ashlock. D. Incorporating required structure into tiles. 2011. IEEE Conference on Computational Intelligence and Games.
[2] Adams, D. Automatic generation of dungeons for computer games. 2002. University of Sheffield, UK.
Title: Re: [7drl 2017] Rogue, Fighter, Mage in the Goblin Caves. [Finished]
Post by: mathpunk on March 12, 2017, 07:23:15 PM
Success! A more-or-less feature complete version compiles and runs. Currently there's only a macOS version but I'll compile for linux and windows soon. If you like this game: post any questions, comments or bug findings here. I'll maintain a list of known issues in the posts above.
Title: Re: [7drl 2017] Rogue, Fighter, Mage (RFM): in the Goblin Caves. [Finished]
Post by: mathpunk on March 12, 2017, 10:13:45 PM
I posted some RFM philosophy on 7drl.org: http://7drl.org/2017/03/12/rogue-fighter-mage-in-the-goblin-caves-success/ (http://7drl.org/2017/03/12/rogue-fighter-mage-in-the-goblin-caves-success/)
Title: Re: [7drl 2017] Rogue, Fighter, Mage in: the Goblin Caves [Finished]
Post by: Legend on March 15, 2017, 12:54:26 AM
This one sounds pretty cool. Will definitely check it out when a windows version is complete.
Title: Re: [7drl 2017] Rogue, Fighter, Mage in: the Goblin Caves [Finished]
Post by: mathpunk on March 15, 2017, 09:58:13 PM
This one sounds pretty cool. Will definitely check it out when a windows version is complete.

Thanks for your interest, Legend. Windows executable is now available! (https://github.com/RogueFighterMage/RogueFighterMage/blob/master/RogueFighterMage-windows-1.1c.zip?raw=true) It was compiled using clang 3.9.1 targeting i686-w64-mingw for 32bit and 64bit Windows. It should run without any additional libraries: DLLs are included for mingw, and SDL 2.0.5. It was tested on Windows 7 and Windows 10 with an Intel Xeon E5-2676 processor. Building and testing was done on Amazon workspaces (Windows 7 value bundle and Windows 10 value bundle), would love to hear about any trouble running.
Title: Cyclopedia - Floor 2 and beyond
Post by: mathpunk on March 17, 2017, 09:54:50 PM
Cyclopedia - Floor 2 and beyond

Here you'll find hints and mild spoilers for floor 2 and lower floors, and more explanations of the mechanics. Read no further if you don't want to be spoiled! (7drl version 1.1 from March 12th and also 1.1c).

Hints:

Items:

Weapons

These weapons are found beyond the first floor of the Goblin Caves.