Angband Forums

Angband Forums (http://angband.oook.cz/forum/index.php)
-   Development (http://angband.oook.cz/forum/forumdisplay.php?f=10)
-   -   [need advice] slots: min : max (number of 'normal' slots to keep stocked) (http://angband.oook.cz/forum/showthread.php?t=9256)

tangar January 14, 2019 14:30

[need advice] slots: min : max (number of 'normal' slots to keep stocked)
 
Hiho!

PWMA player there :D (soon planning to play vanilla too!)

I've started PWMA server and trying to customize it. Customization are made via vanilla gamedata, so maybe someone would be able to help me to understanding this feature:

C:\games\PWMAngband\lib\gamedata\store.txt --- # slots: min : max (number of 'normal' slots to keep stocked)

How does 'slots' work? I've tried to add more items to '1' store and reassigned slots so they would appear more often (from slots:0:4 to 6:18)

# General store
store:1:General Store
owner:5000:Bilbo the Friendly (Hobbit)
owner:10000:Rincewind the Chicken (Human)
owner:20000:Snafu the Midget (Gnome)
owner:30000:Lyar-el the Comely (Elf)
slots:6:18
turnover:2
always:cloak:Cloak
always:food:Ration of Food
always:light:Wooden Torch
always:flask:Flask of Oil
always:digger:Shovel
always:rock:Rock
always:shot:Iron Shot
always:arrow:Arrow
always:bolt:Bolt
always:light:Lantern
normal:food:Pint of Fine Wine
normal:food:Slime Mold
normal:food:Flask of Whisky
normal:food:Hard Biscuit
normal:food:Pint of Fine Ale
normal:mushroom:Stoneskin
normal:potion:Cure Critical Wounds
normal:digger:Pick
normal:potion:Restore Life Levels
buy:light
buy:food
buy:mushroom
buy:flask
buy:digger
buy:crop
buy:horn

-------------------

after some time I had an error:

Quote:

140119 125817 Edgin: You have found 14 gold pieces worth of copper.
140119 125820 Edgin: You have 8 Potions of Cure Light Wounds {*@q1} (c).
140119 125825 Edgin: You enter a maze of up staircases.
140119 125825 BEGIN post_turn_game_loop()
140119 125825 Process the rest of the monsters
140119 125825 Process the objects
140119 125825 Process the world (global)
140119 125825 Process the world (players)
140119 125825 Process everything else
140119 125825 Give energy to all players
140119 125825 Give energy to all monsters
140119 125825 Count game turns
140119 125825 Refresh everybody's displays
140119 125825 Send any information over the network
140119 125825 Get rid of dead players
140119 125825 Housekeeping on leaving a level
140119 125825 Make a new level if requested
140119 125825 BEGIN generate_new_level()
140119 125825 depth=0
140119 125825 existing level
140119 125825 END generate_new_level()
140119 125825 END post_turn_game_loop()
140119 125825 Edgin: You miss Lobelia Sackville-Baggins.
140119 125825 Edgin: You hit Lobelia Sackville-Baggins (3).
140119 125825 Edgin: Lobelia Sackville-Baggins begs you for money (0).
140119 125825 Edgin: Lobelia Sackville-Baggins misses you.
140119 125825 Edgin: You miss Lobelia Sackville-Baggins.
140119 125825 Edgin: You hit Lobelia Sackville-Baggins (5).
140119 125825 Edgin: Lobelia Sackville-Baggins begs you for money (0).
140119 125825 Edgin: Lobelia Sackville-Baggins misses you.
140119 125826 Edgin: You hit Lobelia Sackville-Baggins (6).
140119 125826 Edgin: You hit Lobelia Sackville-Baggins (5).
140119 125826 Edgin: Lobelia Sackville-Baggins begs you for money (0).
140119 125826 Edgin: Lobelia Sackville-Baggins misses you.
140119 125826 Edgin: You hit Lobelia Sackville-Baggins (6).
140119 125826 Edgin: You hit Lobelia Sackville-Baggins (5).
140119 125826 Edgin: Lobelia Sackville-Baggins begs you for money (0).
140119 125826 Edgin: Lobelia Sackville-Baggins misses you.
140119 125827 Edgin: Lobelia Sackville-Baggins begs you for money (0).
140119 125827 Edgin: Lobelia Sackville-Baggins misses you.
140119 125834 Edgin: Accepted!
140119 125834 Edgin: You bought a Potion of Heroism {unseen} for 25 gold.
140119 125834 Edgin: You have a Potion of Heroism (d).
140119 125843 Edgin: Okay.
140119 125843 Edgin: You bought a Wooden Torch (5000 turns) for 6 gold.
140119 125843 Edgin: You have 5 Wooden Torches (5000 turns) (g).
140119 125848 Edgin: You bought 6 Rocks (1d6) (+0,+0) for 6 gold.
140119 125848 Edgin: You have 6 Rocks (1d6) (+0,+0) (1).
140119 125915 Edgin: There is a wall in the way!
140119 125917 Shutting down (panic save).
140119 125917 Server panic info save succeeded!
140119 125917 Unable to (re-)stock store 1. Please report this bug.
in mangband.RPT:
Quote:

Error occured on Saturday, January 12, 2019 at 21:31:56.

C:\PWMAngband\mangband.exe caused an Access Violation at location 004bae6a in module C:\PWMAngband\mangband.exe Reading from location 0000002c.

Registers:
eax=09174648 ebx=7efde000 ecx=00000000 edx=00000000 esi=005344e4 edi=0018f99c
eip=004bae6a esp=0018f834 ebp=0018f834 iopl=0 nv up ei pl nz ac pe nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010212

Call stack:
004BAE6A C:\PWMAngband\mangband.exe:004BAE6A _player_is_resting
00482782 C:\PWMAngband\mangband.exe:00482782 _process_pending_commands
00476F1E C:\PWMAngband\mangband.exe:00476F1E _Setup_net_server
004CB7C2 C:\PWMAngband\mangband.exe:004CB7C2 _sched
00439D61 C:\PWMAngband\mangband.exe:00439D61 _play_game
0045A17F C:\PWMAngband\mangband.exe:0045A17F _main
3267DB86 C:\PWMAngband\CC3260MT.DLL:3267DB86 __startup
76C4343D C:\windows\syswow64\kernel32.dll:76C4343D BaseThreadInitThunk
773D9802 C:\windows\SysWOW64\ntdll.dll:773D9802 RtlInitializeExceptionChain
773D97D5 C:\windows\SysWOW64\ntdll.dll:773D97D5 RtlInitializeExceptionChain

So I suppose it's because my mistake with slots; I've changed it to slots:1:5 to be save. But still I'm not sure that I get it clearly:
# slots: min : max (number of 'normal' slots to keep stocked)
Is it max amount of 'normal' items which store has to have so new 'normal' items wouldn't be generated? Or maybe the problem appeared because I moved 'pick' to 'normal' from 'always' and it generated several Pick of Digging and overflow store list?

Nick January 14, 2019 21:09

The maximum number of slots is 24 (although you can change that in constants.txt). You have 10 always items, so you don't want to set the max normal slots to more than 14. I think what happened is the store had things in more than 14 normal slots, and then there wasn't a slot free to fill an always slot.

tangar January 15, 2019 18:06

Thank you very much for an explanation! :D


All times are GMT +1. The time now is 18:03.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.