7DRL: Paprika

9 views
Skip to first unread message

icey

unread,
Oct 14, 2006, 8:46:05 PM10/14/06
to
Hi,

I'm taking part in the Orange October Minigun 7DRL Challenge by working
on my existing roguelike, named Paprika.

Information, download and screenshots about Paprika are available here:
http://iceyboard.no-ip.org/projects/paprika/

Day 1 is over and version 0.1.11 has been released. Here are the
changes made:

* Improvements to the town:
* The graveyard is accessible from the town.
* The town has fields with trees.
* Friendly animals appear in the town. At the moment this is just
dogs and chickens. I may add cats if I can find a suitable picture of
one. Attacked animals turn hostile, but they are very weak so you'll
probably kill them in one hit.
* Statues of successful characters appear in the town.
* Added an arachnophobia setting to the unsorted.ini file. When
enabled, spiders will not be generated in the dungeons. Resumed games
will change spiders into snakes.
* Creatures have a listen modifier, which determines how easily they
can be heard. For example, dragons can be heard from further away than
rats.
* The item colour on the mini-map has been modified slightly.
Pickupable items (weapons, bananas, etc) now appear in bright blue and
unpickupable items (writing, graves, etc) appear in dark blue.

Best of luck to everyone taking part in the challenge.

icey

unread,
Oct 15, 2006, 6:12:34 PM10/15/06
to
Day 2 is over and version 0.1.12 has been released. Paprika is now over
seven thousand lines of code :)

Changes made today:

* Redesigned the 'new game' window and added a picture of the selected
character.
* The game is now stupidly difficult if the date is Friday the 13th.
* Written in a window, which displays a message and allows the user to
select from a list of options. This is used on merchants (view shop,
swap places or attack) and on creatures that aren't hostile (swap
places, attack or examine). It will be used on many more things in the
future and it'll be the foundations for conversations.
* In tiles mode, all race and class combinations now have male and
female pictures.
* Added pageup and pagedown to the list of available keys. They are
being used for diagonal directions, along with home and end. This
allows all eight directions to be used regardless of the state of num
lock.
* Empty folders are no long required when Paprika is installed. Folders
are generated at run time when needed.

Crypt

unread,
Oct 16, 2006, 4:43:21 AM10/16/06
to
> The game is now stupidly difficult if the date is Friday the 13th.

IMO, it's more fun to make random Demons, Flying Pumpkins (for Halloween) or
Freddy Krugger appearances. (or Evil Santa Claus and his gang of Bickers
Lutins from Ice Hell at december 25., etc....)

Ps: that's the kind of things i plan rather than modifying the difficulty.


icey

unread,
Oct 17, 2006, 3:35:38 AM10/17/06
to
Crypt wrote:
> IMO, it's more fun to make random Demons, Flying Pumpkins (for Halloween) or
> Freddy Krugger appearances. (or Evil Santa Claus and his gang of Bickers
> Lutins from Ice Hell at december 25., etc....)
>
> Ps: that's the kind of things i plan rather than modifying the difficulty.

Aye, I've got that kind of thing planned for Christmas. I noticed in
the tiles sets there's lot of snow covered trees and similar items,
which look great for that. I think there's even a yeti and a few
suitable snow/christmas style creatures :)

Wow, so many possibilities. It's no wonder people never finish their
roguelikes! I think I'll leave these kinds of things until all the
important things are written into Paprika.

I'll post my update for day 3 and 4 this evening.

Crypt

unread,
Oct 17, 2006, 4:43:32 AM10/17/06
to
the friday13th difficulty modification could also lead to another question :
fumbles.

If you use fumbles, rather than modifying difficulties (i don't know what it
does exactly in the current version of Paprika) friday13th could simply
increase the fumbles ranges.

In CryptRL fumbles are not yet implemented, except for the untrap roll, but i
will probably add some for other actions (spell casting => weird and nasty
effects, lock picking => break the lock, etc.)

icey

unread,
Oct 17, 2006, 12:32:21 PM10/17/06
to
Crypt wrote:
> the friday13th difficulty modification could also lead to another question :
> fumbles.

Oooh, that's an interesting idea. That would make sense with Friday the
13th being about bad luck.

> If you use fumbles, rather than modifying difficulties (i don't know what it
> does exactly in the current version of Paprika) friday13th could simply
> increase the fumbles ranges.

There's three levels of difficulty in Paprika. They affect the treasure
generated, monsters generated and a few other things, like secret doors
are not generated on easy setting. It would be trivial for me to add a
super-easy and super-hard mode in, so I might do that at some point. I
need to get it balanced before I start doing things like that though.

> In CryptRL fumbles are not yet implemented, except for the untrap roll, but i
> will probably add some for other actions (spell casting => weird and nasty
> effects, lock picking => break the lock, etc.)

Aye, those things make sense. I suppose you could add things like
dropping weapons, spilling potions, tearing scrolls, tripping over
stones...

icey

unread,
Oct 17, 2006, 12:35:10 PM10/17/06
to
Day 3 finished yesterday. Here are the updates for that day:

* The message window can now show tiles. Tiles on this window and the
'new game' window have a town floor background so the object or person
can easily be seen.
* Doors can now be closed by pressing 'c' when adjacent to a door. This
will not work if a creature is in the doorway.
* Fixed action menu commands not working correctly if keys have been
reassigned.
* Added a check in to make sure the player doesn't start on top of a
monster.
* The version number is stored in save files. If a game is loaded that
was created in a different version of Paprika, a warning message is
displayed. In future, if the save file version is known to be
compatible with the application version, the warning will not be
displayed.

I'll realse a new version of Paprika when I've finished the
modifications for day 4.

icey

unread,
Oct 17, 2006, 6:40:00 PM10/17/06
to
Day 4 is over and version 0.1.13 has been released at the usual place:
http://iceyboard.no-ip.org/projects/paprika/

Here's a list of changes:

* Creatures can have immunities and resistances. They can also have
reductions and vulnerabilities. For example, undead are immune to
poison and creatures that are meant to be cold will take more damage
from fire than a regular creature.
* When any type of monster is killed by any character, it's
identification string is stored in the killed.ini file along with the
last character to kill it. This will be used to create the encyclopedia
window.
* Weapon and shield size restrictions are in place, based on the size
of the character. For example, small characters can't use large shields
and normal characters can't use large weapons if they have a large
shield equipped.

icey

unread,
Oct 18, 2006, 5:09:37 PM10/18/06
to
Day 5 is over. Only one thing done today, but it's a very large
thing...

* Pathfinding

That's taken the last few hours to write into a separate testing
application, make efficient, then write into Paprika and test. I'm
using a method based on this article:
http://roguebasin.roguelikedevelopment.org/index.php?title=Quick_Pathfinding_in_a_Dungeon

In my test application I generated 20,000 20x20 blank maps, filled in
random positions, then selected a random start and end position, then
determined the quickest path. This was done in 1 minutes 28 seconds,
which is 1 every 0.0044 seconds. So if you blinked, you'd miss 29 of
them :)

The main reasons I've written pathfinding are:

1. Pets. They need to be able to follow the player round, so they need
a more sophisticated method of moving around.

2. Multiple monsters attacking the player currently stand behind each
other. Pathfinding will give them the ability to move around into an
attacking position.

3. If the player does something that creates a lot of noise, it should
make monsters investigate. This could work out rather badly for the
player if suddenly all the monsters on the level start charging towards
them. But then again it could work out really well if they make a lot
of noise and then run off quick.

4. I want monsters to move around to different places on the level. At
the moment, the player goes into the level and they only really disturb
monsters that they want to. If the monsters decide to go somewhere,
things get less predictable and more interesting. This would work out
nicely for playing a rogue style character as well.

icey

unread,
Oct 19, 2006, 6:16:51 PM10/19/06
to
Day 6 is over. Here are the updates for today:

* Monsters can now open doors (or just push them open if they don't
have hands). A listen check is performed based on the distance away, if
successful, you'll get a mesage saying you hear a door opening. In the
future, rogues will be able to lock/unlock doors to stop creatures
using them.
* Monsters follow through levels when the player uses steps. No more
running away!
* Game difficulty now determines how merchants buy/sell items. Easy
means lower priced items and more gold for selling items, hard is the
opposite.
* The distances of monsters displayed by the Life Detection spell is
now more accurate.
* Written in a mage merchant, who sells scrolls. He can be found in one
of the buildings in the town.
* Shields are available as a viewable section of the inventory.
* Fixed a bug that was giving experience to the player each time they
went down a level, instead of just the first time.

I'll release a new version with the changes I make tomorrow.

Crypt

unread,
Oct 20, 2006, 12:05:32 AM10/20/06
to
On 2006-10-20 00:16:51, "icey" <icey...@gmail.com> wrote:

> * Monsters can now open doors (or just push them open if they don't
> have hands).


some fields you could add for your monsters:
- isSentient eg.can read, can pick locks if is also Fine_Manipulator, etc
- isFine_Manipulator eg.can pick locks, open things, etc..
- canSpeak

Stats like Dex or Int cannot take place of this kind of informations.
eg. you could consider that a dog can have a relatively high Int but is not
sentient, a monkey could open a door but would not have the idea to use a tool
to pick a lock, etc...


Crypt

unread,
Oct 20, 2006, 1:05:08 AM10/20/06
to
anything special for Halloween ? :)

icey

unread,
Oct 20, 2006, 1:19:30 PM10/20/06
to
Crypt wrote:
> anything special for Halloween ? :)

Ooooh. I will probably write something in for Halloween, but not until
the next Halloween. Paprika still needs lots of basic features, before
I start thinking about extra things. Here some ideas though:

* Scary-faced pumpkins added to the food list.
* Bats, witches, goblins, vampires and the most evil thing of all,
which is children running around the town annoying you for sweets
* Pet could be a black cat
* Scarecrows in the fields

Blimey, a 7DRL could be made where you play a child who goes round
singing at peoples doors for money, with his/her pet cat, whilst
avoiding all the witches, bats, goblins and stuff. Set it at night,
throw in a few pumpkins to regenerate health and that would be cool :)

icey

unread,
Oct 20, 2006, 8:01:04 PM10/20/06
to
The week is now over and I've released version 0.1.14. Here are the
changes made today:

* Written in containers. They can start with a few random objects and
you can place items in them for retrieval later.
* Generalist merchants now buy scrolls and have a small chance of
selling scrolls.
* Added the bestiary window, which shows creatures that have been
killed. Several more things are planned for that, see the to-do list
for more info.
* Scroll of Teleport has been renamed to Scroll of Displace. It moves
the character to a random place on the current level. I will write a
Scroll of Teleport, which can move you to any level you have been on.
* It's now possible to equip two rings.
* Fixed a bug that would happen when selling an item to a merchant that
had no items.
* Fixed spelling of "sapphires".
* The fire spell only works on creatures that can be seen, so it no
longer goes through walls.

The complete changelog for Paprika, which shows the changes done this
week, can be found here:
http://iceyboard.no-ip.org/projects/paprika/documentation/changelog.html

Paprika can be downloaded here:
http://iceyboard.no-ip.org/projects/paprika/

Please note that Paprika is not a 7DRL. I decided to concentrate on
making a lot of improvements to Paprika for seven days, instead of
creating a new roguelike in seven days. Work will continue on Paprika
in the future.

Congratulations to everyone who has taken part in the challenge. Best
of luck to those who haven't started or are part of the way through
their week.

R. Dan Henry

unread,
Oct 26, 2006, 6:31:48 PM10/26/06
to
On 20 Oct 2006 17:01:04 -0700, "icey" <icey...@gmail.com> wrote:

>* Scroll of Teleport has been renamed to Scroll of Displace.

"Scroll of Displace" should be "Scroll of Displacement" (or possibly
"Scroll of Displacing", although that sounds like you'd be moving into a
spot already occupied by someone else).

>Please note that Paprika is not a 7DRL. I decided to concentrate on
>making a lot of improvements to Paprika for seven days, instead of
>creating a new roguelike in seven days. Work will continue on Paprika
>in the future.

Hey, whatever works to help you make progress.

--
R. Dan Henry = danh...@inreach.com
If you wish to put anything I post on your website,
please be polite enough to ask first.

icey

unread,
Oct 27, 2006, 8:01:14 AM10/27/06
to
R. Dan Henry wrote:
> On 20 Oct 2006 17:01:04 -0700, "icey" <icey...@gmail.com> wrote:
>
> >* Scroll of Teleport has been renamed to Scroll of Displace.
>
> "Scroll of Displace" should be "Scroll of Displacement" (or possibly
> "Scroll of Displacing", although that sounds like you'd be moving into a
> spot already occupied by someone else).

Thanks for the advice, I'll change it to "Scroll of Displacement"

I want two scrolls:

1. Moves the player to a random unoccupied space on the current level
(currently called 'Scroll of Displace')
2. Moves the player to any place they have previously visited
(currently called 'Scroll of Teleport')

Although now you've posted that... I want a third scroll that swaps
with another creature!

If you have any better suggests for 'displace', that would be great. At
the moment I only have these scrolls to test out the magic system, when
I've finalised how I want it to work I'll greatly expand the available
scrolls and rewrite the existing ones if necessary.

> >Please note that Paprika is not a 7DRL. I decided to concentrate on
> >making a lot of improvements to Paprika for seven days, instead of
> >creating a new roguelike in seven days. Work will continue on Paprika
> >in the future.
>
> Hey, whatever works to help you make progress.

Aye, I got loads of things done on Paprika, even though I had to do
lots of overtime (on *real* work) and was looking for a house to buy!

Ray Dillinger

unread,
Oct 27, 2006, 11:32:38 AM10/27/06
to
R. Dan Henry wrote:
> On 20 Oct 2006 17:01:04 -0700, "icey" <icey...@gmail.com> wrote:
>
>
>>* Scroll of Teleport has been renamed to Scroll of Displace.
>
>
> "Scroll of Displace" should be "Scroll of Displacement" (or possibly
> "Scroll of Displacing",

Um, why? "Scroll of Displace" seems no more a twisted use of
English than the other suggestions you made, especially since
it's a title.

And where does this "Foo of Bar" naming convention come from
anyway? "Blink scroll" might be a better and more descriptive
name. I think it's annoying when games are too much alike, and
"Foo of Bar" naming conventions are definitely overused.

Anyway, it's his game, so let him name things as he sees fit.


Bear

Martin Read

unread,
Oct 27, 2006, 2:09:30 PM10/27/06
to
Ray Dillinger <be...@sonic.net> wrote:
>And where does this "Foo of Bar" naming convention come from
>anyway?

Heroic fantasy fiction via Dungeons and Dragons, like most tropes of the
fantasy gaming world.
--
Martin Read - my opinions are my own. share them if you wish.
\_\/_/ http://www.chiark.greenend.org.uk/~mpread/dungeonbash/
\ / "the lights shine clear through the sodium haze the night draws near
\/ and the daylight fades" -- Sisters of Mercy, "Lights"

icey

unread,
Oct 28, 2006, 9:32:25 AM10/28/06
to
Ray Dillinger wrote:
> And where does this "Foo of Bar" naming convention come from
> anyway?
[...]

> I think it's annoying when games are too much alike, and
> "Foo of Bar" naming conventions are definitely overused.

I think you answered your own question there :) We all learn and are
influenced by each other.

Although now I think about it the "Bar Foo" method of naming does sound
better. It would also follow the naming convention of other things in
Paprika: Clear Bottle, Acid Long Sword, Silver Coins, Studded Leather
Armour, Flame Trap, Small Wooden Shield, Metal Box, etc, etc.

I'll also change the rings, which are currently named like Ring of
Blindness, Ring of Confusion, etc.

> "Blink scroll" might be a better and more descriptive name.

I had a search on Google for that and it does seem like an appropriate
name for what I want it to do.

> Anyway, it's his game, so let him name things as he sees fit.

True, but I'm very happy to receive suggestions and advice.

Malorzean

unread,
Oct 29, 2006, 12:45:05 AM10/29/06
to
There seems to be a bug. Whenever I am poisoned it says: " was killed
by poison."

icey

unread,
Oct 29, 2006, 12:37:11 PM10/29/06
to
Malorzean wrote:
> There seems to be a bug. Whenever I am poisoned it says: " was killed
> by poison."

Thanks for letting me know. I can't work out how that would happen and
I don't seem to be able to replicate it.

If you still have the files, would it be possible to zip and send me
the character files? They'll be in /Save/$Character-Name$/ or
/Graveyard/$Character-Name$/ if the character died. I might be able to
work out why it occured from looking at the log files.

Thanks Malorzean.

Reply all
Reply to author
Forward
0 new messages