Stendhal Testing
Testing Stendhal is not only fun, it's also very important because it can solve problems before releases. If you find any problems or need help with testing please ask at #arianne. If you have found a bug, feel free to submit a report directly.
We have a dedicated test server on stendhalgame.org Port 32100. It is refreshed with new code and a new copy of the real database once a day. You can login with your normal account, if it is a least one day old.
Test Client
You may need a test client.
Java
Just save the stendhal-1.48.5.zip file, extract it into a new folder, then double click the stendhal-starter.jar. Please note that the test client will not update automatically.
Web
Go to the following URL in a web browser, but replace "<username>" with your character's name: https://stendhalgame.org/testclient/stendhal.html#<username>
Android/Web
There is an experimental client for Android mobile devices. Downloads are located here. You will need to enable installation from third party sources.
Testing Aids
Aida
A special helper NPC, Aida, is available on the test server. You can request any item from & she can teleport you to specific maps, any NPC or player, & she can mark empty scrolls for you.
Testing Key
| ◼: please test | {{Test|}} |
| ◼: ok | {{Test|ok}} |
| ◼: not ok | {{Test|nok}} |
| ◼: please test | {{Test||text}} |
| ◼: ok | {{Test|ok|text}} |
| ◼: not ok | {{Test|nok|text}} |
Tests Specific to the Next Release
You can use a 1.48 release client to logon to test server, but you will need the 1.48.5 client to be able to test all features.
It is helpful to also use the test client to play on the main, release, server. Playing normally with the 1.48.5 client could help us uncover new client side bugs, so long as any bug reports make it clear which version of client you use and which server you are playing on.
Combat
- ATK XP rewarded for successful or blocked hits regardless of having recently taken damage ◼: please test
- missed hits never reward ATK XP ◼: please test
New Creatures
| Creature | Test Status | Notes |
|---|---|---|
| golden orc | cannot be tested on test server | Rare. Spawns on average once in 4 weeks. |
Creature Drops
| Creature | New Drops | Rate | Test Status |
|---|---|---|---|
| <creature>centaur king</creature> | <item>power arrow</item> | 3-22 @ 26% | ◼: please test |
| <creature>solar centaur</creature> | <item>fire arrow</item> | 3-22 @ 26% | ◼: please test |
| <creature>glacier centaur</creature> | <item>ice arrow</item> | 3-22 @ 26% | ◼: please test |
| <creature>orc spearman</creature> | <item>golden orc sword</item> | 0.004% | ◼: please test |
Sound
| Entity | Changes | Test Status |
|---|---|---|
| <npc>Rose Leigh</npc> | ambient sounds | ◼: please test |
| <npc>Princess Esclara</npc> | kiss sound when quest completed | ◼: please test |
| <npc>Marianne</npc> | ambient sounds | ◼: please test |
Achievements
- Find Jef's Mom quest added as requirement for Private Detective ◼: please test
Quest Changes
| Quest | Changes | Test State |
|---|---|---|
| Daily Item | Added 5 <item>charcoal</item> | ◼: please test |
| Kirdneh Museum | Removed: - <item>magic twoside axe</item> - <item>xeno sword</item> |
◼: please test |
| Kirdneh Museum | Moved to medium difficulty: - <item>magic cloak</item> - <item>hell dagger</item> |
◼: please test |
| Pied Piper | whitelisted int_ados_fishermans_hut_south for rat spawns | cannot test on test server |
| Ultimate Collector | Added: - <item>golden orc sword</item> - <item>ice war hammer</item> - <item>orcish sword</item> - <item>black halberd</item> |
◼: please test |
Graphics
Items
| Item | New Image | Test State | Notes |
|---|---|---|---|
| l/r hand swords</item> | l_hand_sword | ◼: please test | new image |
| <item>master key</item> | skeleton | ◼: please test | new image |
| <item>pet sanctuary key</item> | filigree | ◼: please test | new image |
| <item>dark arrow</item> | dark_arrow | ◼: please test | flipped & added outline |
| <item>fire arrow</item> | fire_arrow | ◼: please test | flipped & added outline |
| <item>golden arrow</item> | golden_arrow | ◼: please test | flipped & added outline |
| <item>ice arrow</item> | ice_arrow | ◼: please test | flipped & added outline |
| <item>light arrow</item> | light_arrow | ◼: please test | flipped & added outline |
| <item>power arrow</item> | power_arrow | ◼: please test | flipped & added outline |
| <item>steel arrow</item> | steel_arrow | ◼: please test | flipped & added outline |
| <item>wooden arrow</item> | wooden_arrow | ◼: please test | new image |
| <item>elvish boots</item> | elvish_boots | ◼: please test | new image |
| <item>elvish shield</item> | elvish_shield | ◼: please test | new image |
| <item>basket</item> | basket | ◼: please test | added outline |
| <item>balloon</item> | balloon | ◼: please test | added outline |
| <item>amulet</item> | amulet | ◼: please test | added outline |
| <item>crossbow</item> | crossbow | ◼: please test | minor edit to width |
| <item>garlic</item> | garlic | ◼: please test | changed outline color |
| <item>nihonto</item> | nihonto | ◼: please test | minor fix to hilt |
| <item>immortal sword</item> | magic_sword | ◼: please test | added outline |
| <item>ugmash</item> | ugmash | ◼: please test | slight downscale to fit 32x32 |
| <item>leather helmet</item> | leather_helmet | ◼: please test | removed metal & narrowed |
| <item>studded helmet</item> | studded_helmet | ◼: please test | narrowed |
| <item>engagement ring</item> | engagement_ring | ◼: please test | animated |
| <item>xeno cloak</item> | xeno_cloak | ◼: please test | recolored |
Entities
| Entity | New Image | Test State | Notes |
|---|---|---|---|
| <creature>amazoness archer</creature> | amazoness_archer | ◼: please test | touched up |
| <creature>amazoness archer commander</creature> | amazoness_archer_commander | ◼: please test | touched up |
| <creature>amazoness coastguard</creature> | amazoness_coastguard | ◼: please test | touched up |
| <creature>amazoness coastguard mistress</creature> | amazoness_coastguard_master | ◼: please test | touched up |
| <creature>amazoness commander</creature> | amazoness_commander | ◼: please test | touched up |
| <creature>amazoness elite coastguard</creature> | amazoness_elite_coastguard | ◼: please test | touched up |
| <creature>amazoness hunter</creature> | amazoness_hunter | ◼: please test | touched up |
| <creature>earth elemental</creature> | earth_elemental | ◼: please test | touched up |
| <creature>amazoness vigilance</creature> | amazoness_vigilance | ◼: please test | touched up |
| <creature>demon</creature> | demon | ◼: please test | touched up |
| <creature>black duergar</creature> | duergar_black | ◼: please test | touched up |
| <creature>duergar</creature> | duergar | ◼: please test | touched up |
| <creature>duergar axeman</creature> | duergar_axe | ◼: please test | touched up |
| <creature>duergar elite</creature> | duergar_elite | ◼: please test | touched up |
| <creature>duergar hero</creature> | duergar_hero | ◼: please test | touched up |
| <creature>duergar king</creature> | duergar_king | ◼: please test | touched up |
| <creature>duergar wizard</creature> | duergar_wizard | ◼: please test | touched up |
| <creature>dwarf</creature> | dwarf | ◼: please test | touched up |
| <creature>dwarf guardian</creature> | dwarf_guardian | ◼: please test | touched up |
| <creature>elder duergar</creature> | duergar_elder | ◼: please test | touched up |
| <creature>elder dwarf</creature> | elder_dwarf | ◼: please test | touched up |
| <creature>giant dwarf</creature> & <creature>Dhohr Nuggetcutter</creature> | giant_dwarf | ◼: please test | touched up |
| <creature>hero dwarf</creature> | hero_dwarf | ◼: please test | touched up |
| <creature>leader dwarf</creature> | leader_dwarf | ◼: please test | touched up |
| <creature>Lord Durin</creature> | lord_durin | ◼: please test | touched up |
| <creature>goblin</creature> | goblin | ◼: please test | touched up |
| <creature>soldier goblin</creature> | soldier_goblin | ◼: please test | touched up |
| <creature>veteran goblin</creature> | veteran_goblin | ◼: please test | touched up |
| <creature>imperial demon lord</creature> | imperial_demon_lord | ◼: please test | touched up |
| <creature>imperial demon servant</creature> | imperial_demon_servant | ◼: please test | touched up |
| <creature>madaram archer</creature> | madaram_archer | ◼: please test | touched up w/ new head |
| <creature>madaram axeman</creature> | madaram_axeman | ◼: please test | touched up w/ new head |
| <creature>madaram buster blader</creature> | madaram_buster_blader | ◼: please test | touched up w/ new head |
| <creature>madaram cavalry</creature> | madaram_cavalry | ◼: please test | new head |
| <creature>madaram healer</creature> | madaram_healer | ◼: please test | touched up w/ new head |
| <creature>madaram hero</creature> | madaram_hero | ◼: please test | touched up w/ new head |
| <creature>madaram peasant</creature> | madaram_peasant | ◼: please test | touched up w/ new head |
| <creature>madaram queen</creature> | madaram_queen | ◼: please test | touched up w/ new head |
| <creature>madaram soldier</creature> | madaram_soldier | ◼: please test | touched up w/ new head |
| <creature>madaram stalker</creature> | madaram_stalker | ◼: please test | touched up w/ new head |
| <creature>madaram trooper</creature> | madaram_trooper | ◼: please test | touched up |
| <creature>madaram windwalker</creature> | madaram_windwalker | ◼: please test | new image |
| <creature>oni warrior</creature> | oni_warrior | ◼: please test | touched up |
| <creature>oni king</creature> | oni_king | ◼: please test | touched up |
| <creature>archrat</creature> | archrat | ◼: please test | touched up |
| <creature>ratman</creature> | ratman | ◼: please test | touched up |
| <creature>ratwoman</creature> | ratwoman | ◼: please test | touched up |
| <creature>centaur king</creature> | centaur_king | ◼: please test | added bow & horn |
| <creature>glacier centaur</creature> | centaur_glacier | ◼: please test | added bow |
| <creature>solar centaur</creature> | centaur_solar | ◼: please test | added bow |
| <creature>high lich</creature> | high_lich | ◼: please test | touched up |
| <npc>Agnus</npc> | oldratwomannpc | ◼: please test | touched up |
| <npc>Alrak</npc> | dwarfnpc | ◼: please test | touched up |
| <npc>Alexander</npc> | weaponrytradernpc | ◼: please test | touched up |
| <npc>Avalon</npc> | ratchildboy2npc | ◼: please test | touched up |
| <npc>Christina</npc> & <npc>Erna</npc> | housewifenpc | ◼: please test | touched up |
| <npc>Cody</npc> | ratchildboy1npc | ◼: please test | touched up |
| <npc>Fritz</npc> | oldfishermannpc | ◼: please test | touched up |
| <npc>Gaston</npc> | ratchefnpc | ◼: please test | touched up |
| <npc>Gulimo</npc> & <npc>Loretta</npc> | greendwarfnpc | ◼: please test | touched up |
| <npc>Hackim Easso</npc> | naughtyteennpc | ◼: please test | touched up |
| Hiro | sokobannpc | cannot test on test server | touched up |
| <npc>Hogart</npc> & <npc>Ritati Dragontracker</npc> | olddwarfnpc | ◼: please test | touched up |
| <npc>Hunel</npc> | dwarfguardnpc | ◼: please test | touched up |
| <npc>Josephine</npc> | youngwomannpc | ◼: please test | touched up |
| <npc>Joshua</npc> | goldsmithnpc | ◼: please test | touched up |
| <npc>King Edward of Deniran</npc> | deniran_king | ◼: please test | touched up |
| <npc>King Cozart</npc> | kingcozartnpc | ◼: please test | touched up |
| <npc>Kroip</npc> | koboldchefnpc | ◼: please test | touched up |
| <npc>Mariel</npc> | ratchild2npc | ◼: please test | touched up |
| <npc>Mayor Chalmers</npc> | badmayornpc | ◼: please test | touched up |
| <npc>Mayor Sakhs</npc> | mayornpc | ◼: please test | touched up |
| <npc>Ognir</npc> | ringsmithnpc | ◼: please test | touched up |
| <npc>Olmo</npc> | meatandfishsmokernpc | ◼: please test | touched up |
| <npc>Opal</npc> | ratchild1npc | ◼: please test | touched up |
| <npc>Ramon</npc> & <npc>Ricardo</npc> | naughtyteen2npc | ◼: please test | touched up |
| <npc>Rose Leigh</npc> | gypsywomannpc | ◼: please test | touched up |
| <npc>Tomi</npc> | captive_tomi | ◼: please test | touched up |
| <npc>Vulcanus</npc> | vulcanus | ◼: please test | touched up |
| <npc>Woody</npc> | woodcutternpc | ◼: please test | touched up |
| <npc>Xoderos</npc> | blacksmithnpc | ◼: please test | touched up |
Outfits
| Directory | Filename | Old | Test State | Notes |
|---|---|---|---|---|
| dress | 009.png | 894e86e | ◼: ok AntumDeluge | |
| dress | 016.png | 894e86e | ◼: ok AntumDeluge | |
| dress | 999.png | 894e86e | ◼: ok AntumDeluge |
Web Client
- added support for own/leave pets ◼: ok AntumDeluge
- speech bubble position offset using entity size ◼: ok AntumDeluge
- players are represented with blue + on minimap ◼: ok AntumDeluge
- travel log shows when quests are repeatable ◼: ok AntumDeluge
- chest collision is visible on minimap (cannot test on test server)
Java Client
- chest collision is visible on minimap ◼: ok AntumDeluge
Misc
- Adventure Island guarantees spawn for Daily Monster quest ◼: please test
- additional 4 minutes of training time in dojo at level 590 ◼: please test
Standard Tests
- Move around
- Use double click on main screen to walk
- Use double click on Minimap to walk
- Use auto key focus to walk and stop walking
- Collide with something
- Collide with objects
- Check that your Minimap, Settings Panel, Bag, Keyring, Buddies list and Character Window appear correctly
- Use Look, /tell, /who, Attack and Stop Attack
- Use Set Outfit
- Use admin *Destroy, *Inspect and *Alter
- Run admin script
- Talk with NPC
- Change zone
- Use portal. especially any which might have changed recently
- Use teleport scrolls
- Use summon scrolls
- Visit many areas. Any NPCs who can't be created will show up in your console log
- Buy items
- Sell items
- Buy a sheep
- Sell sheep
- Attack a creature
- Loot a corpse
- Move corpses around
- Level up
- Harvest grain
- Pick food from a plant grower and check it grows back
- Get item produced and collect it
- Use a bank chest
- Use item taken from bank chest
- Use a bank vault
- Use a scroll from the bank vault
- Logout in the bank vault
- Move items from body to bag
- Drop items
- Move items around on the ground
- Redo some quests, pick at random from StendhalQuest
- Do Semos Mayor quest
- Do Ados mayor quest
- Do deathmatch
- Go to dreamscape and 7 kikareukin clouds
- Use the wizard bank
- Gamble in Semos tavern
- Play blackjack on Athor ferry
- Do /where playername
- Use /support and /supportanswer
- Check /help and /gmhelp
- Add buddies
- Remove buddies
- Rent an outfit
- Rent a sign from Gordon
- Push someone
- Get sent to jail, get released
- Ignore someone
- Remove the ignore from someone
- Go /away with a message, have someone else /msg you, check the mouse over box in the status pannel
- Go /grumpy with a message, have buddy and non buddy /msg you, check the mouse over box in the status pannel
- Get poisoned
- Eat too much
- Die (many ways)
- Login in with wrong version. It MUST warn
- Login to server. It MUST work
- Listen to music and sound
- Login using automatically updated client
- Run /script NPCPathCheck.class
Notes
- When you do each stage, read your console log.
- For quest testing: if you want to use an existing char, that has done most quests, you can reset all quests by saying cleanme! (with "!") to <npc>Diogenes</npc>. This only works for admins.
- The test server log is here and can be useful to check if something strange happened (just scroll to the bottom for the latest entries)
Create chat log for tests
Please try to play dumb and fool the NPC by asking stupid question which may confuse him. For example say that you already have the items you are supposed to fetch although this is not true, yet. Reject the quest first time and only return later to accept it. Try to ask to start the quest again once it has finished, this kind of thing.
Please say Bye when you want to finish the conversation if the NPC is still listening.
We need full chat dialog for these quests:
- FishermansLicenseQuiz from the fisherman in Ados huts
- Meet Io
- Getting a maze from <npc>Haizen</npc> chatlog needed: solving maze, chatlog there for: player logs off while doing it
- Meet <npc>Zynn Iwuhos</npc>
Dice Gambling with <npc>Ricardo</npc>Junit test needs creation still- FindJefsMom
- KillMonks
- CleanAthorUnderground
- WaterForXiphin (Patches tracker ID: 3520164)
- TrapsForKlaas
- MixtureForOrtiv
- CoalForHunchey