posted
These are the release notes for Well of Souls Version A87
--------------- CHANGES FOR THIS RELEASE
* COMPATIBILITY: Excellent!
* SOUL DIARY CHANGES
I added the buddy hat to the diary page (no, you can't sort by them). Also I added a 'last encountered' field which tracks the last time you met up with that character. Eventually I will use that field to prune/auto-prune using some rule like "keep the 4000 most important entries" where 'important' is something like "recently encountered, or has a buddy hat, or you have written personal notes about.."
* NEW DIARY COMMAND: PRUNE OLDEST PAGES
1.) nothing happens automatically (other than the hard-wired maximum of 8000 entries)
2.) a new menu option exists:
"Delete all but newest pages..."
3.) It gives you PLENTY of warning
4.) And then prunes you down to no more than 4,000 entries. Throwing away entries which:
* have no buddy hat * have no written notes (your personal notes) * you haven't seen in world for a long time
where long time means "only the 4000 most recent"
---
NOW, I only added the 'last seen' info in A84 or so, so most of your old entries don't have that. They are then all treated as equally old, so it is up to the filesystem to control what order they are preserved in (and no, the file system does NOT pump them out in strictly chronological format, so it's a crap shoot)
SO, be sure to 'buddy' people whose pages are important to you.
And, bear in mind, that unlike Arcadia (where you automatically get a page for everyone you meet), WoS still only makes a page when you show curiousity about someone.
---
And I fixed the individual delete button as well.
-----
By the way, I thought it would be cooler to show you each entry as I delete it. It makes the whole thing take a bit longer, but it's more interesting than looking at a white screen.
It's a little terrifying (I just pruned 2500 of my own pages), but it seems to work as designed.
Now, that bit about "if you have written a personal comment about them" probably deserves some explanation... Way Back When (The diary is what, ten years old?) I stored those notes differently. If you, like me, have some notes stored in that old format, then those pages will not be automatically protected.
If you are at all concerned, making any trivial change to the notes will get them recorded in the new format.
NOTE: You might want to make a backup copy of your original wos/bio folder before running this command. I mean, it's new code. Could be broken..
* BIG NEW FEATURE: TROPHIES and the TROPHY BAG
code:
; ; TROPHIES ; ; TROPHIES are carried in the Trophy Bag ; ; They are basically only used for quests. You can, for example, define specific trophies ; to be dropped by individual monsters. "Wolf Ear" "Bear Fang" etc. and then use ; cookies to check if the user has collected what you asked for. ; ; At any given time, the player has exactly one trophy bag, and it has a width and a height (measured in 'slots') ; Players start out with no bag at all, and you must script a scene to give them a bag when you feel they deserve ; one (probably an NPC bag-maker will give or sell them a bag, and possibly upgrade it over time. ; ; Bags look like this, for example: (width=4, height=3, 12 slots total) ; ; +----+----+----+----+ ; | | | | | ; +----+----+----+----+ ; | | | | | ; +----+----+----+----+ ; | | | | | ; +----+----+----+----+ ; ; Each slot can hold only one sort of trophy at a time, for example a fang in one slot, and a claw ; in another. ; ; But most trophies (per following table) 'stack' in the sense that you can hold up to.. say.. 10 fangs ; in the same slot, and only when you get your 11th fang do you need another slot. ; ; The user can drag the contents of slots around, or right-click on them to sell or discard a slot's ; contents. They can only sell when in a shop scene. The game will automatically pick the 'best slot' ; to use when a new trophy is given to the player (unless you use a slot-specific cookie commands). ; ; But, should the player end up with two slots holding less than a full stack of the same trophy, they ; can 'drag one into the other' to merge them. ; ; If you want to completely remove the bag from the player, set both its width and height to 0. Note ; that if you make the total number of slots smaller than it was, items will be lost if they cannot all ; fit in the remaining number of slots. You might want to think about which dimension you want to ; change first, if that will make a difference. ; ; It is the user's responsibility to keep some empty slots available, or they might not be able ; to get an important trophy. The world developer can measure how much room is in the bag and ; warn the player if they have not got room for a mission-critical trophy. ; ; Trophies can NOT be shared between players. Trophies are not ITEMs and fulfill no purpose ; other than as named-quest maguffins. ; ; The world developer has the following commands and cookie controls over the player's Trophy Bag ; ;// COMMANDS (running out of letters, so 'Z' means trophy only because.. um.. I have no idea :-) ;// %Znn - name of trophy nn (e.g. "Hello, %1, that's a nice %Z23 you have there!") ;// GIVE Znn.cc - give cc of trophy nn (e.g. HOST_GIVE Z23.11) ;// TAKE Znn.cc - take cc of trophy nn ;// Conditional Znn.cc - go to label if host has cc or more of trophy NN (e.g. IF Z23.10 @hasTenOrMore) ;// ;// COOKIES ;// num.TrophyBagOpen - (r/w) 0 if bag closed, 1 if open (cannot open 0 - slot bag) ;// num.TrophyBagWidth - (r/w) width of bag ;// num.TrophyBagHeight - (r/w) height of bag ;// num.TrophyBagSlots - (r) total slots in bag ;// num.TrophyBagSlotsInUse - (r/w) non-empty slots in bag (WRITING any value, empties bag completely) ;// num.TrophyBagEmptySlots - (r) empty slots in bag ;// num.TrophyNNN - (r) how many trophyId=NNN hero has, in total, in bag ;// num.TrophyBagRoomNNN - (r) how many MORE trophyId=NNN hero could take (filling all stacks and slots) ;// num.TrophyIdInSlotNNN - (r/w) id (or 0) of trophy in slot NNN. (write REPLACEs slot with a SINGLE trophy) ;// num.TrophyCountInSlotNNN - (r/w) qty (or 0) of trophy in slot NNN. (write REPLACEs count, without changing id) ;// (cannot set count if id=0, cannot set count above 'stackHeight' for id) ; ; TABLE ARGUMENTS: ; ; Each Possible Trophy is defined by one line in this table, with the following 8 arguments per trophy. Note that ; Trophy images are 32x32 'icons' stored in "filmstrip" files in the ART folder of your world. These must be ; prepared like any other WoS BMP file, and use the official WoS 256 color palette. There are assumed to be ; guidelines in the file, so only 31x31 pixels are available for art. The upper left pixel of the file defines ; the 'transparent' color for the icon. ; ; // arg 0 ID# (1-4095) ; // arg 1 trophy name (31 char max) ; // arg 2 ImageFileName, (in ART folder, assumed to have .bmp extension) ; // arg 3 ImageIndex, (0 for first frame of 'filmstrip' in ImageFile) ; // arg 4 stack size (how many of these fit in a single Trophy Bag Slot) (0-99) ; // arg 5 gpForStack (How much a shop will pay for a FULL STACK of these) ; // arg 6 demonId (Which monster 'drops' these when killed) (use 0 if not to be found on monsters) ; // arg 7 probability, (percentage chance 0-100 you will get one for killing that monster) ; ; Arg0 Arg1 Arg2 Arg3 Arg4 Arg5 Arg6 Arg7 ; ID Name ImageFileName ImgIndx StackSz StackGP DemonID findProb ; 1234 1234567890123456789012345678901 123456789012345 1, "Green Jelly Pigment", "trophy", 0, 20, 5, 1, 80
* FIGHT/FIGHT2 opcode allows you to specify starting monster location.
I think this is like the oldest un-fulfilled request.
code:
FIGHT 1.50.50
makes monster id 1 appear at location (50,50) (where screen coords are 0-100). You cannot use (0,0).
* Can no longer flee scene while paralysed (if disease has a 'cannot move' effect, that also prevents fleeing.
* MONSTER MAY NOW FLEE SCENE
If a monster sees a human player in the scene who is 20 levels or more above it, it will grow fearful and may flee the scene in mid-battle.
The degree of fear increases with the level difference.
Monsters with wisdom > 100 will also consider their own remaining hit points and grow even MORE fearful as they get closer to death.
Now, this COULD be a big change... especially for people who depend on being able to wack green jellies all night with an auto-clicker to get PP. Hopefully this won't destroy the game.
* NEW CONFIG.INI values
code:
; these affect PK damage in your world. Basically the same computation is made when a player ; attacks another player, but at the last moment it is multiplied by these percentages, ; hence you can make PK battles last longer or shorter times in your world. ; Does NOT affect healing. ;pkHandPercent = 100 ;pkMagicPercent = 100 ; this is used to increase (>100) or decrease (<100) the percentage of successful spell casts spellSuccessPercent = 100
* SUMMONED MONSTERS FIGHT FOR SIDE THAT SUMMONED THEM
More or less. They aren't smart enough in a PK battle to fight some humans but not others. They either consider ALL humans to be allies, or ALL humans to be enemies.
What's new is they no longer always think humans are enemies. If the monster who summoned them is a pet, or was summoned by a human, then they will think ALL humans are their pals.
* LEVELS.TXT CAN SPECIFY DEFAULT SKINS PER CLASS/PER GENDER
the "DEFAULT_SKIN" command lets you specify the skin to be seen by players who do not have the REAL skin selected by a player. If you do not use this feature, the default will come from the genders.ini file (as before).
Evergreen has been updated to use an assortment of Josh Skins for this purpose.
* NEW FIGHT THINGY
You know how if you say:
FIGHT -34
It brings in a monster 34 who then fights FOR the humans.
You can now also say:
FIGHT +34
This brings in a monster who still hates humans, but is unable to actually attack them. Instead it will attack human-friendly monsters (like that -34)
So this allows a scene to have a 'monster on monster' battle while the humans watch in safety (or call out pets to help).
This does NOT affect whether humans can pound the monsters (and thus influence the fight).. would need some sort of scene directive if you wanted to prevent that.
Also, the FIGHT won't END until all the '+' monsters are dead... since the living humans in the scene can be thought of a extra '-' monsters.
I think I will need some sort of MFIGHT command which factors humans out of the equation.
* RIGHT-CLICK on ELEMENT TRAINING REDUCES TRAINING
That is to say, you can now dump some training and get some PP back. You get back only half what you put in (this isn't a FREE redistribution system!). It's probably mainly of use only to people like me who like to make interesting shapes on the element training diagram. But hey, it might help out in an emergency where you have to sacrifice three levels of fire to get one level of water that you need RIGHT NOW.
* INCLUDES NEW WORLD-PATCHING SUPPORT
But only if you do it MY WAY (heh heh). I will have to document this more clearly but. Wholly under control of the publisher, with no daily involvement from me, a publisher can add 'patch' information to their world's INFO file. Then when a player clicks on the world in 'check on line for new worlds' Not only do I tell them what I used to tell them (new world available, you should get it), I also give them a button to install Just The Patch which you feel a person still running their version should get.
From the player's perspective, the patch is then automatic and easy, with no ZIP skillz required. It's just like the download button, but faster.
Of course, if they are several versions behind, and you didn't provide a patch to take them directly to the latest version.. well, then they have to push the patch button again... and again..
But what is a patch file, you ask? It's NOT a 'real' patch file with compressed diffs. That would be 'too dangerous' (Uncle WoS won't run an EXE file!)
It's just another .ZIP file, just like your world's .ZIP file, but from which you have removed all the files which didn't change between those versions.
I have a test world up "PatchWorld" (won't work for you until you have A87) which gives version 1.1 as the DOWNLOAD and offers 1.1-->1.2 as the PATCH (and possibly more flavors by the time you try it).
I made one of these just by using /version + PUBLISH to make version 1.2, then opening the ZIP file itself, and deleting all files older than the date I made 1.1
It was actually kinda easy, since WinZip will sort by date.
Then I renamed it: PatchWorld@p1_1_to_1_2.zip and put on my site, along with an extra line in the INFO file claiming that users with version 1.1 should run this patch.
Anyway, it's easier than it sounds... for everybody.
* ACTOR POSES NO LONGER LIMITED TO 60ish
Thanks to Flamelord for insisting (and being correct) that I had crammed in an arbitrary limit for the number of usable poses in an actor filmstrip.
The new arbitrary number is 255 (which is less arbitrary since the packets in question impose this limit)
But I remain on record as thinking it's a bad idea to have hugely-wide image files. Still, this should be YOUR choice, not mine
* 'CHOOSE YOUR WORLD' LIST FASTER
If, like me, you have 50 or so installed worlds, you probably find it tedious to step through my 'cool' scrolling menu.
I have changed it to show (and step) five worlds at a time, and to do so with an animation speed 2 or 3 times faster as before.
I also reduced the amount of "wobble" in the selected menu item.
* CHECK ON LINE WORLDS LIST HAS NEW FIELD: STATUS
World Developers may now (blame f'nok!) include a 'status' field in their INFO file. Which will then be displayed in the new "Status" column on the CheckOnline dialog. If you do not provide a status, your status is "Old"
F'nok suggests you use status with worlds like "Demo", "Beta", and "Released" etc. But in fact you can put any (short) string you like. Yes, I will ban publishers who put profanity in their status line.
I plead that you do NOT use this line for ADVERTISING. Note that to see this line, a user must click on your world name, and when they do that, your world's HOME PAGE displays. Do your ADVERTISING on your world's HOME PAGE, please! And by advertising, I mean advertising for your world. I trust all world developers to do their best to minimize popups on their world's home page.
* CHECK ON LINE LIST CACHES VERSION AND STATUS
So, since I don't actually KNOW the status and version info for the world until after you click on it, I now cache the 'last known values' for those fields. In your new "c|wos\save\worldCache.ini" file where maybe someday I will let you record your own personal little factoids about each world... like how much time YOU have spent playing it, etc. Private info, not public. Maybe. Anyway, an interesting place for me to stick stuff, even about worlds you have never played, but are somehow aware of.
* CHECK ONLINE WORLD STATUSES: Broken and Old
I will automatically dub your world 'Broken' if it does not have a functional INFO file. It's important that you host an up to date INFO file for your world, so if you see yourself as 'broken' (Like Aerianell is), then feel free to fix your INFO file and let me know if it has a new url.
I will automatically dub your world 'Old' if it is otherwise functional, but lacks the new 'status' field in its INI file. I am not completely happy with 'Old' and am open to a better word. I sort of like "Legacy" but maybe that sounds TOO cool, and people will intentionally set their status to that just to be cool. I need a word which is both not insulting to the world AND yet something a world developer would just as soon update to something nicer.
* /VERSION PUBLISH DIALOG NOW HAS INTEGRATED SUPPORT FOR STATUS AND PATCHES
Since otherwise, it was going to overwrite whatever you had manually added to your world.ini file, I went ahead and made it so you can manage these fields directly in the dialog itself.
I want no excuses for people NOT using the /version and PUBLISH features of WoS
* IMPROVED PROGRESS METER FOR DOWNLOAD WORLD
Turns out it would go blank if your world was over 20 megs or so (making it slightly less than useless). I also added bandwidth tracking and give an estimate of how long until download completes.
I also detect 'bad downloads' and cache the result of your last download attempt "Failed DL" Publishers should consider moving to a different host if players regularly complain about 'failed download.'
I think the only player-unfriendly thing left is worlds which advertise they are version 1.5, but actually deliver version 1.0 That's pretty evil (KOC), since it encourages the user to download the old version over and over again.
Oh, and I wish I had a popup detctor. Some worlds (I'm lookin' at YOU WoSInstantMessenger) really have an unacceptable number of popup windows. I might have to just manually un-publish worlds when I see that. I mean, 4 copies of the *same* ad popped up in 1 second? Whose purpose does THAT serve?
* EVEN MORE CONFIG.INI ENTRIES
These are for controlling what generates War Points... hopefully there are more coming, but it's a start.
code:
; set this to a positive value to enable the posting of normal PK 'karma points' as 'war points' to the War Ladder ; otherwise, comment it out, or set it to 0. The value 'scales' the points (bigger value, fewer points) ; These war points are applied only to the specific war(s) between you and the guy you killed. karmaPointsAreAlsoWarPoints=234 ; ; set this to non-zero to enable "XP Earned from Monster Kills" to drive 'war points' on the war ladder ; If you set this to 1000, for example, you will earn one war point per 1000 monster XP points ; These points are awarded to your guild for ALL its open wars at once. monsterXPAreAlsoWarPoints=1000
* WAR GUILDS AND WAR GUILD LADDER
I can't believe this is the first I mentioned this in this topic. I talked about it plenty elsewhere.
With A87 pre-release, we get the first cut of this feature. It's all new code and does not prevent you from doing what you did before. It's new.
You access the feature through the new GUILD WARS menu in the game's GUILD menu.
You have to be incarnated and wearing the uniform of a WAR GUILD to take part. If you are the guildmeister, you just set the 'is war guild' checkbox on the guild's web page.
You might want to be in the habit of selecting GUILDS/GUILD WARS/DECLARE WAR after incarnating to make sure you are all hooked up.
That panel is where you can declar war, but mainly it just shows you the people immediately above you on the ladder, and the status of any wars you have going with them.
For the full ladder, and your full list of wars, there are other menu options.
World developers control what earns war points in the war. For evergreemn (in pre-release A87 at least), you earn two ways: 1.) the XP you earn from killing monsters (divided by a 1000) generates WP for ALL the wars you are in (that your current uniform is in, I should say). 1.) normal PK activities. And I mean totally normal PK activities. I have not yet done the promised 'fair fight' stuff..
Anyway, I hope it will make sense. The ladder will probably get cleared frequently.
* NEW SLASH COMMAND /ART
This is like /villagers (and uses the exact same code), only it lets you browse 'filmstrip' files in the ART folder. Not everything in that folder is a filmstrip, but this is useful for browsing things like your 'trophy' image files. I include 4 such files with WoS now, containing various torn off bits and pieces of Josh's monsters. It's invaluable when you need to know the frame number in a 'square frame' film strip.
It's presumably all wrong in a non-square frame film strip, so I guess I should point that out (like, for example, shields.bmp and swords.bmp and armor.bmp)
* ADDED TROPHIES TO THE /PROPS EDITOR
This was more work than it sounds, but it is hard to type about it in a way which takes up very many words.
* ADDED PROPS BUTTON TO WORLD EDIT DIALOG
How were people supposed to know about the /props editor again? The Property Editor is your pal. As is /tile and a huge monitor.
-------------------- He knows when you are sleeping. Posts: 10586 | From: California | Registered: Dec 1998
| IP: Logged