PDA

View Full Version : lrn2map



Pages : 1 2 [3]

Tillmen
03-16-2014, 12:25 PM
Prime map database is uploaded.

Platinum map database is uploaded.
Also added 13,442 forage tags to the Platinum database.

Tillmen
03-16-2014, 01:12 PM
There are some stones and skulls both inside the maze and in some otherwise identical rooms leading into the mazes, which can help slightly to uniquely identify a handful of rooms.

To use the stones and skulls to uniquely identify a room in the database, do something like:
;e Room[num].unique_loot = [ 'skull' ]

The name needs to be an exact match. You can use this to see what it should be:
;e GameObj.loot.each { |o| respond o.name }



Is there any way at all to fully implement this kind of map? I have a feeling since we know how many unique rooms and how they are connected it ought to be possible, and the question is if the difficulty level is a 10 out of 10, an 11 out of 10, or a 100 out of 10. As far as attempting to answer that question myself, I'm not sure how lich determines the present room, such that if a character logged out while in one of these mazes, or experienced lag while travelling, perhaps it could be impossible to determine what room they are in.

While the rooms are unique on paper, they won't all be unique in the map database, probably. In a perfect world, the combination of room title/description/paths will be unique for every room. When that doesn't cut it, you can also add permanent loot, location verb (which won't be helpful in this case), and peering into the next room.

Your current room is not saved when you log off. go2 figures out what room you're in when it starts, and then creates a list of all the movements it will need to get to its destination. It doesn't check which room you're in again unless it gets hung up and restarts.


In that case, we at least need to keep the same random solver which presently exists, but still in theory those issues shouldn't absolutely forbid mapping the area (and maybe we need to add an extra "fake" room which is the default determination for the room and uses the random solver to escape).

If a proper mapping is impossible, the system can still be improved I think. In particular, we can make a mini-script to go from each room outside the maze to another room outside the maze based on the known cardinal direction paths. This would at least mean that travelling which should involve movement between, say, four rooms, does not sometimes take twenty seconds with random guesses.

The easiest way to do it is as you said. Create a path in the database from the outside of one side of the maze to the outside of the other side, with the four movements or whatever to get across; and make a path from each inside room to each outside room using the random movement method. This will create an annoyance for anyone using wander to hunt which moves one room at a time, which is probably also the case now. This can be improved on depending on how much effort you want to put into it.

For example, suppose on your map of the ghostly trees that rooms 6 and 7 were identical to each other, but not to any other rooms (I have no idea if that's the case). Those two rooms would have the same room id in the database, and a path could be created from that room to room Y. This path would move southwest once and then check if it was in the unique room Y. If it is, it's done. If not, it knows it's in room 4, whether or not room 4 is unique, and moves northeast, northeast, southwest, done.

Kaldonis
03-17-2014, 03:23 AM
Thanks for the very informative reply.


While the rooms are unique on paper, they won't all be unique in the map database, probably. In a perfect world, the combination of room title/description/paths will be unique for every room. When that doesn't cut it, you can also add permanent loot, location verb (which won't be helpful in this case), and peering into the next room.


Peering works? That's a great help! That means definitely we can uniquely identify all the rooms outside the maze, which definitely allows the mini-script approach from any room outside the maze to any other room outside the maze feasible.

As far as inside the maze, from the unique loot we can get at least two rooms per maze. From those rooms, we can also make mini-scripts to each exit, speeding up the random solver.

By peering from inside the maze, it's possible to identify about half the other rooms uniquely. However, we need to peer in all four directions (nw, ne, se, sw) and consider the sum of the information to do this. Let's set this aside for now and I can consider coming back to it later once I've implemented a simpler version.

For now, I need to determine how to peer into a single direction to get the ID of that room to determine the current room. And I need to figure out how to add new rooms to the database. Time to start reading this full thread!

(Not formally working on any map databases yet...need to get my hands dirty first.)

Anne
03-30-2014, 07:41 PM
Mapping the bard guild in Icemule in prime.

Anne
03-31-2014, 08:58 PM
Database sent to Tillmen.

Franknozly
04-10-2014, 02:31 PM
I'm going to rework Darkstone paths, it's horrendously broken to the point you'll end up stuck underwater or bonking your head against the portcullis till kingdom come.

I'll wait for the DB to be uploaded and start my work then on prime.

Tillmen
05-04-2014, 03:50 PM
Prime map database is uploaded.

Anne
05-08-2014, 08:50 PM
Mapping a few odd and end spots in the Landing in prime.

EDIT: Scratch that. I'll do it when I have more on it to do.

Gilralyn
05-14-2014, 04:22 PM
Mapping Solhaven, Cairnfang Manor in GS IV Prime.

Room ID: 22109, add tag "node" (might be a supernode, too)

EDIT: Done, and sent to Tillmen.

Tillmen
05-18-2014, 06:27 PM
Prime map database is uploaded.

zoraster
05-19-2014, 05:12 PM
going to attempt guardian keep in prime

Kaldonis
05-21-2014, 06:40 PM
Figured out almost everything I need to get the basics of the Miasmal Forest mazes implemented.

But I need to know how to manually add a new room to the database (since I need to fork two pairs of rooms), and then how to drop wayto and timeto in the situations they become erroneous. The best I could get was to get the wayto as a double quote or nil, when I want to just kill it all together.


Why don't you go to the start of this thread and read? Just a suggestion.

Just to say so before someone says this to me, I've done that and more.

I determined in order to use peer to have go2 distinguish two otherwise unique rooms, the results of peer should be put into a tag. I figured that out by looking at the raw map database; it's surprising how few rooms actually use this method. Like a handful in the Rift, one in Silvergate, and one in Nelemar, as far as I could determine.

Once I have new rooms to work with, I can patch all the wayto and timeto to make the room functional. All 26 mini-scripts have been tested.

Then once the prime mapping is freed, I'll post again calling dibs and implement it.

Franknozly
05-21-2014, 07:05 PM
Thread is too long, First post doesn't have all info needed anymore. Tillmen's too busy::cough::lazy::cough:: to update OP.

Here's some crap that might help

Room.current.find_nearest_by_tag("tag")
Room.current.find_all_nearest_by_tag("tag")
;e Room.current.image = nil
;e Room[#].image_coords = nil
;mapmap combine <old room id> <new room id>
;e echo Room.current_or_new <--- creates a new room or returns the one it matches in the database if found

Last one being the one you were asking.

Tillmen
05-21-2014, 08:12 PM
Room[1].wayto.delete('2')
Room[1].timeto.delete('2')

Kaldonis
05-21-2014, 10:55 PM
They both totally work in memory!

Great, thank you both.

Now we wait.

Kaldonis
05-23-2014, 10:07 PM
I heard zoraster emailed the new map for prime. can it be pushed live so I can do some RR mapping this weekend?

Tillmen
05-23-2014, 10:36 PM
Prime map database is uploaded.

Kaldonis
05-23-2014, 11:25 PM
Prime map database is uploaded.

Yay, thanks!

Working on Prime map.

Kaldonis
05-24-2014, 04:51 AM
Okay so the Miasmal Forest mazes are now solved from the outside in Prime. Anyone in Shattered or Plat who wants can duplicate using the following junk.

Spectral Mists
Y, Z are exits at the north side, west to east
A, B, C are exits to the south side, west to east
For find and replace on the mini-scripts, here is the Prime correspondence

11630: Y Z (initially shared ID)
22218: Y (New)
16122: Spectral Mists maze shared ID
11612: A
11617: B
11618: C



Spectral Mists Room Z Prime # 11630
set Z spectral with skull to distinguish from Y

;e Room[11630].unique_loot = [ 'parrot skull' ]

north from here is 11631
fix its north bearing

;e Room[11630].wayto.delete('11632')
;e Room[11630].timeto.delete('11632')
;e Room[11630].wayto['11631'] = "north"
;e Room[11630].timeto['11631'] = 0.2
;narost fix (clicky clicky)

to A

;e Room[11630].wayto['11612'] = StringProc.new("move 'southwest';move 'northwest';move 'northwest';move 'southwest';move 'northwest'")
;e Room[11630].timeto['11612'] = 1.0
to B

;e Room[11630].wayto['11617'] = StringProc.new("move 'southeast';move 'southwest';move 'northwest';move 'northwest'")
;e Room[11630].timeto['11617'] = 0.8
to C

;e Room[11630].wayto['11618'] = StringProc.new("move 'southeast';move 'northwest';move 'southeast';move 'southwest'")
;e Room[11630].timeto['11618'] = 0.8
to Y

;e Room[11630].wayto['22218'] = StringProc.new("move 'southwest';move 'northeast'")
;e Room[11630].timeto['22218'] = 0.4

Spectral Mists Room Y Prime # 22218 (NEW)

;e echo Room.current_or_new

north from here is 11633, so clear the old case

;e Room[11633].wayto.delete('11630')
;e Room[11633].timeto.delete('11630')
add the new case

;e Room[11633].wayto['22218'] = "south"
;e Room[11633].timeto['22218'] = 0.2
;narost fix (clicky clicky)
and its mirror

;e Room[22218].wayto['11633'] = "north"
;e Room[22218].timeto['11633'] = 0.2

fix a way into the main Spectral Mists for the masochist

;e Room[22218].wayto['16122'] = "southwest"
;e Room[22218].timeto['16122'] = 0.2
mirror or the randomizers sticks you back in the maze after escaping

;e Room[16122].wayto['22218'] = StringProc.new("move ['northeast','southeast'][rand(2)] while checkpaths == [ 'ne', 'se', 'sw', 'nw' ]")
;e Room[16122].timeto['22218'] = 10.0

to A

;e Room[22218].wayto['11612'] = StringProc.new("move 'southwest';move 'southeast';move 'northwest';move 'southwest';move 'northwest'")
;e Room[22218].timeto['11612'] = 1.0
to B

;e Room[22218].wayto['11617'] = StringProc.new("move 'southeast';move 'southeast';move 'southwest';move 'northwest';move 'northwest'")
;e Room[22218].timeto['11617'] = 1.0
to C

;e Room[22218].wayto['11618'] = StringProc.new("move 'southwest';move 'northwest';move 'southeast';move 'southwest'")
;e Room[22218].timeto['11618'] = 0.8
to Z

;e Room[22218].wayto['11630'] = StringProc.new("move 'southeast';move 'northeast'")
;e Room[22218].timeto['11630'] = 0.4


Spectral Mists Room A Prime # 11612
to Y

;e Room[11612].wayto['22218'] = StringProc.new("fput 'search';move 'go trail';move 'northeast';move 'northeast';move 'southeast';move 'northwest'")
;e Room[11612].timeto['22218'] = 1.0
to Z

;e Room[11612].wayto['11630'] = StringProc.new("fput 'search';move 'go trail';move 'northeast';move 'northeast';move 'southeast';move 'northeast'")
;e Room[11612].timeto['11630'] = 1.0

Spectral Mists Room B Prime # 11617
to Y

;e Room[11617].wayto['22218'] = StringProc.new("fput 'search';move 'go path';move 'southeast';move 'northeast';move 'northeast'")
;e Room[11617].timeto['22218'] = 0.8
to Z

;e Room[11617].wayto['11630'] = StringProc.new("fput 'search';move 'go path';move 'northwest';move 'southeast';move 'northwest';move 'northeast'")
;e Room[11617].timeto['11630'] = 1.0

Spectral Mists Room C Prime # 11618
to Y

;e Room[11618].wayto['22218'] = StringProc.new("fput 'search';move 'go trail';move 'northeast';move 'southeast';move 'northwest'")
;e Room[11618].timeto['22218'] = 0.8
to Z

;e Room[11618].wayto['11630'] = StringProc.new("fput 'search';move 'go trail';move 'northeast';move 'southeast';move 'northeast'")
;e Room[11618].timeto['11630'] = 0.8


Ghostly Trees
Y, Z are exits at the north side, west to east
A, B, C are exits to the south side, west to east
For find and replace on the mini-scripts, here is the Prime correspondence

11653: Y Z (initially shared ID)
22219: Y (new)
16124: Ghostly Trees maze shared ID
11620: A
11622: B
11623: C



Ghostly Trees Room Z Prime # 11653
set Z to the present room:

;e Room[11653].tags.push('peer north =~ /^Obvious paths: northeast, south, northwest/')
(after Y is made, we need to poke and re-active the room, which will retain the original 11653 number)

;e echo Room.current_or_new

north from here is 11661, fix its north bearing

;e Room[11653].wayto.delete('11649')
;e Room[11653].timeto.delete('11649')
;e Room[11653].wayto['11661'] = "north"
;e Room[11653].timeto['11661'] = 0.2

;narost fix (clicky clicky)

to A

;e Room[11653].wayto['11620'] = StringProc.new("move 'southeast';move 'northwest';move 'southeast';move 'southwest'")
;e Room[11653].timeto['11620'] = 0.8
to B

;e Room[11653].wayto['11622'] = StringProc.new("move 'southeast';move 'southwest';move 'northeast';move 'southwest'")
;e Room[11653].timeto['11622'] = 0.8
to Y

;e Room[11653].wayto['22219'] = StringProc.new("move 'southwest';move 'southeast'")
;e Room[11653].timeto['22219'] = 0.4


Ghostly Trees Room Y Prime # 22219 (NEW)

;e echo Room.current_or_new
set Y to new room with peer

;e Room[22219].tags.push('peer north =~ /^Obvious paths: north, northeast, east, south/')

north from here is 11652, so clear the old case

;e Room[11652].wayto.delete('11653')
;e Room[11652].timeto.delete('11653')
add the new case

;e Room[11652].wayto['22219'] = "south"
;e Room[11652].timeto['22219'] = 0.2
;narost fix clicky clicky
and its mirror

;e Room[22219].wayto['11652'] = "north"
;e Room[22219].timeto['11652'] = 0.2

fix a way into the main Ghostly Trees for the masochist

;e Room[22219].wayto['16124'] = "southwest"
;e Room[22219].timeto['16124'] = 0.2
mirror or the randomizers sticks you back in the maze after escaping

;e Room[16124].wayto['22219'] = StringProc.new("while checkpaths == ['ne', 'se', 'sw', 'nw']; move ['northeast','southeast'][rand(2)]; end;")
;e Room[16124].timeto['22219'] = 10.0

to A

;e Room[22219].wayto['11620'] = StringProc.new("move 'southwest';move 'northwest';move 'southeast';move 'southwest'")
;e Room[22219].timeto['11620'] = 0.8
to B

;e Room[22219].wayto['11622'] = StringProc.new("move 'southwest';move 'southwest';move 'northeast';move 'southwest'")
;e Room[22219].timeto['11622'] = 0.8
to Z

;e Room[22219].wayto['11653'] = StringProc.new("move 'southeast';move 'southeast'")
;e Room[22219].timeto['11653'] = 0.4


Ghostly Trees Room A Prime # 11620
to Y

;e Room[11620].wayto['22219'] = StringProc.new("fput 'search';move 'go trail';move 'northeast';move 'southeast';move 'northeast';move 'northeast';move 'southwest'")
;e Room[11620].timeto['22219'] = 1.2
to Z

;e Room[11620].wayto['11653'] = StringProc.new("fput 'search';move 'go trail';move 'northeast';move 'southeast';move 'northeast';move 'northeast';move 'northeast'")
;e Room[11620].timeto['11653'] = 1.2

Ghostly Trees Room B Prime # 11622
to Y

;e Room[11622].wayto['22219'] = StringProc.new("fput 'search';move 'go path';move 'northeast';move 'southwest'")
;e Room[11622].timeto['22219'] = 0.6
to Z

;e Room[11622].wayto['11653'] = StringProc.new("fput 'search';move 'go path';move 'northeast';move 'northeast'")
;e Room[11622].timeto['11653'] = 0.6

Ghostly Trees Room C Prime # 11623
to Y

;e Room[11623].wayto['22219'] = StringProc.new("fput 'search';move 'go trail';move 'southeast';move 'northwest';move 'southeast'")
;e Room[11623].timeto['22219'] = 0.8
to Z

;e Room[11623].wayto['11653'] = StringProc.new("fput 'search';move 'go trail';move 'southeast';move 'southeast'")
;e Room[11623].timeto['11653'] = 0.6

You crazy kids have fun now...

Allereli
05-27-2014, 01:02 PM
there was a collapse of one of the burrow tunnels in the landing if anyone knows how to fix it in go2, it ends up looping you down there

Tillmen
06-02-2014, 10:53 AM
Prime map database is uploaded.

DaCapn
06-02-2014, 09:26 PM
there was a collapse of one of the burrow tunnels in the landing if anyone knows how to fix it in go2, it ends up looping you down there

If this is a temporary issue that blocks a room or something, what I usually do is just temporarily band-aid my own database. If you just set the timeto between two rooms to be very large, go2 will calculate a different route if available.

This will make the time between room IDs 1234 and 1235 to be 60 sec:
;e Map[1234].timeto['1235'] = 60.0; Map.save

This would persist between sessions but would need to be done every time you update the map database.

Gilralyn
06-10-2014, 07:51 PM
Mapping locker annex for Mist Harbor in GSIV Prime.

EDIT: Done. Sent to Tillmen.

Tillmen
06-20-2014, 02:27 PM
Prime map database is uploaded.

Franknozly
06-22-2014, 05:11 PM
... need to fix fwi lockers since the paths are all messed up now. Remapping prime.

-Removed burrow way paths, updated room descriptions with ;mapmap combine (sorc guild path fix)
-Redid Darkstone entrance path, drawbridge, the panel to tk's, the identical rooms in harbs.
-Fixed the fwi locker room mapping

sent.

Tillmen
06-23-2014, 04:21 PM
Prime map database is uploaded.

Franknozly
06-25-2014, 09:38 AM
Need to fix somethings in the darkstone path. Will notify when sent.

sent

Demgar
06-27-2014, 06:08 AM
Is the map file protected by a checksum, or does editing it in notepad++ corrupt it in some way?

I was trying to edit the file to not cast haste (and waste my young wizard's mana on the way to a hunt) in that first room of the IMT trail. I just changed haste.cast to echo 'Don't haste this room', but then the file threw errors when it tried to load in. Any tips?

Tillmen
06-30-2014, 02:09 PM
Is the map file protected by a checksum, or does editing it in notepad++ corrupt it in some way?

I was trying to edit the file to not cast haste (and waste my young wizard's mana on the way to a hunt) in that first room of the IMT trail. I just changed haste.cast to echo 'Don't haste this room', but then the file threw errors when it tried to load in. Any tips?

It's a binary file, so using a text editor will screw up the formatting. You can make it stop casting haste by doing
;go2 --ice-mode=wait

Tillmen
06-30-2014, 02:11 PM
Prime map database is uploaded.

Franknozly
06-30-2014, 02:17 PM
Funny, I tell people that all the time and they don't believe me and edit their files anyways. Le sigh.

Demgar
06-30-2014, 07:15 PM
Funny, I tell people that all the time and they don't believe me and edit their files anyways. Le sigh.

Ha! No harm done, just a quick re-download and I was back in business! What *should* I use to edit it?

Franknozly
06-30-2014, 07:35 PM
Ha! No harm done, just a quick re-download and I was back in business! What *should* I use to edit it?

Lich.
Example:
;e echo Room.current.inspect
;e Room.current.wayto['12345']=StringProc.new('echo "blah"')
;e Room.current.timeto['12345']=0.2
;mapmap check
;e Map.save

If don't know ruby but know how to program, it's not too hard to learn.
If you don't know how to program and you can still pick up ruby scripting language if your brain hasn't turned into swiss cheese from years of alcohol abuse.
If none of the above applies and you're screaming AWAY WITH THEE, FOUL DEMON! ... then perhaps you can entice someone to do it for you for a reasonable amount of compensation for their time and expertise. (Donate lots of $$$ to Tillmen)

Anne
07-01-2014, 12:08 AM
Working on the prime map to add all the new temporary(?) areas from tonight.

Demgar
07-01-2014, 04:12 AM
Lich.

Ok, grand. That makes sense. I was guessing that it was in some standard format I could edit directly with a third party program.

I know python and the .net languages, I can more or less read ruby, will probably pick it up pretty quick. Thanks!

Nahkaev
07-02-2014, 07:35 AM
a while back someone added logic to the 'chute' in the zombie farmhouse in icemule trace.
that is- if you search for it, and fail to see it, you must leave the room them come back. Go2 does this perfectly now.

I was wondering if anyone smart enough might be inclined to apply this same logic to the "Dark Grotto" area cracks, since they operate in much the same way.

Franknozly
07-02-2014, 04:52 PM
Ok, grand. That makes sense. I was guessing that it was in some standard format I could edit directly with a third party program.

I know python and the .net languages, I can more or less read ruby, will probably pick it up pretty quick. Thanks!

http://ruby-doc.org/core-2.0.0/Marshal.html#method-c-dump
That's what's used to serialize the Map structure. As you can see it is pretty much it's own special format. Though you could take the c code and try converting them into equivalent structures in whatever language you like. Seems like a lot of work though.

Tillmen
07-02-2014, 10:41 PM
If you really want it in another format, you can use
;e Map.save_xml
and
;e Map.load_xml

The binary format is used because it loads much much faster.

Rozy
07-02-2014, 10:43 PM
Anne, I am done mucking with the swale map, so as long as Kenstrom doesn't open any new areas within, you should be fine.

Tillmen
07-08-2014, 12:28 PM
Prime map database is uploaded.

Doldrum
07-08-2014, 02:45 PM
--- Lich v4.4.22 is active. Type ;help for usage info.

Lich has always worked fine for me before this but then it tries to download the new map and I get this map-1404844394.dat: marshal data too short
And if I try to ;updater update forcemap it tell me [updater: this error was likely caused by a conflict with zlib, which is fixed in the updated Ruby installer at lichproject.org/download] but Im not sure which of them is the right one to download on the big list

Tillmen
07-08-2014, 03:27 PM
That should say lichproject.org/download.html

Doldrum
07-08-2014, 04:07 PM
I downloaded and installed the ruby 1.8.6(it says 1.8.7 on the site but when I install its the 1.8.6) and it was still doing it. Do I need to uninstall completely the lich stuff and then reinstall? I did download the lich on the site and signed in using that instead of my usual one and I still get the likely cause is the zlib, which is fixed in the updated ruby installer message and then it shows me the Documents/lich-4.4.19/lich/data/GSIV/map-1404240591.dat: marshal data too short--- Lich: updater has exited part

Tillmen
07-08-2014, 04:37 PM
You don't need to mess with the Lich folder.

The "marshal data too short" error shows up because the file it's trying to load isn't complete. It might even just be a file name with no data in it at all. The error with the zlib message is what caused this file to be incomplete.

I just now downloaded the ruby installer from lichproject.org/download.html and installed it. It is version 1.8.7. I'm not sure what's showing up as 1.8.6 for you. I'd suggest uninstalling all versions of Ruby that you have installed and trying again.

Tillmen
07-08-2014, 04:40 PM
Prime map database is uploaded again.

It shouldn't try to use the swale thing as a shortcut anymore.

Doldrum
07-08-2014, 04:53 PM
That worked, I feel dumb but I sure do appreciate the help. Thank you.

Kaldonis
07-09-2014, 02:25 AM
Prime map database is uploaded.

This latest update was done without syncing the map. If possible, please revert and pull the latest database!

July 1st version seems fine at least for my work: map-1404151065.dat

July 9th version did not sync correctly, needs to be pulled and re-done: map-1404240591.dat

I noticed because all my work on the Miasmal Forest and Beacon Hall is gone. This means everything done at least since 05-24-2014 is removed

Please always remember this step!


Step 4: Download the latest map database (type ;updater update forcemap).

Thanks!

Kaldonis
07-10-2014, 12:54 PM
Poke

Please pull this database.

Tillmen
07-10-2014, 02:22 PM
I reverted the Prime database back to map-1404151065.dat and then remapped the swale thing and added it to narost. Also added a thousand or so forage tags. As far as I can tell, everything is good now.

Kaldonis
07-11-2014, 05:22 AM
I reverted the Prime database back to map-1404151065.dat and then remapped the swale thing and added it to narost. Also added a thousand or so forage tags. As far as I can tell, everything is good now.

You're the best!

Gonna add the Sorcerer Guilds to narost in Prime as long as I was whining about stuff.

Also adding the Embassies in Ta'Illistim into go2 as well as narost.

Realized it was night/day messaging that was driving me crazy for Maelstrom Bay and the Ruined Tower, so fixed any of those rooms. And there's certain sorcerer guild rooms with similar issues which I'll try to take care of...

Found another room description in the Ghostly Trees and fixed that up.

Franknozly
07-17-2014, 07:17 AM
Almost been a week... not done yet? While you're at it can you map deadfall forest. I mapped it for myself for now.

Tillmen
07-17-2014, 01:30 PM
Don't judge me!

Prime map database is uploaded.

Franknozly
07-17-2014, 02:20 PM
okay mapping deadfall forest.

Done.

Also added some missing rooms like Sagan's hideout and the shortcut between bathhouse and the alleyway TSNE (dont see how those two magically connect but they do)
Added tags for node/town in swale.

Tillmen
07-17-2014, 03:53 PM
Prime map database is uploaded.

Kaldonis
07-18-2014, 02:31 PM
Thanks!!!

Also don't judge me. That was 250k of planar chalk, and I did it in a weekend, including night and day messaging.

Kaldonis
07-19-2014, 07:09 AM
Oh and nice job fixing that Niima's Shrine symbol of seeking!

<3 Tillmen

Kaldonis
07-19-2014, 09:00 AM
heard there was an issue with FWI CHE locker annexes peering through the curtain. I added BHA following exactly the method used by Twilight Hall and added a new room, but maybe the 2 peering rooms plus non-unique rooms is making something weird happen?

can I get some confirmation on other CHE locker annexes peering repeatedly? If so, we either have to delete the Twilight and Beacon rooms or (better) get people to add their locker annexes. I can post the method to do this....

Buckwheet
07-19-2014, 09:08 AM
I am not able to answer your question however before the pauper anned worked and now:

>close locker
That is already closed.
>;go2 town
--- Lich: go2 active.
[go2]>peer curtain
>
[go2: error: your current room was not found in the map database]
--- Lich: go2 has exited.
peer cur
You peer behind a curtain and see...

[Paupers, Annex Lobby]
Simple, but elegant, the teakwood flooring of this room is polished to a lustrous sheen. A royal blue velvet pennant edged in silver hangs near a heavy, white muslin curtain. You also see a polished mother-of-pearl bin and a tall ebonwood cabinet inlaid with Paupers' coat-of-arms in silver and lapis blue.
Obvious exits: out
>

Kaldonis
07-20-2014, 03:39 AM
Thanks for the information; it sounds like it's working correctly.


I am not able to answer your question however before the pauper anned worked and now:

I'm not clear how it could have been working before since only Twilight Hall and Cairnfang Manor were previously mapped (and why mapping Beacon Hall in an identical way would induce any trouble), unless Paupers was briefly mapped a couple weeks ago and the records were lost by mistake? If it worked for Paupers when Paupers was not properly in the database, I surmise it was a lucky bug. Did it only work to get out or also to get in?!

Below are instructions for anyone interested to add their FWI Annex locker to go2 properly. I don't think I skip any steps, so it should be fairly fool-proof if you substitute the room numbers (which are in bold) accordingly, the correct peering message, and the right methods to get between the rooms (which will differ). Otherwise all bold items below are syntax to send to lich.

1) Make sure your database is updated.


;updater update forcemap

2) Add the outer Annex room as a new room. In our example here it is automatically assigned the room number 22407.



[Annex, Beacon Hall Lobby]
Simple, but elegant, the teakwood flooring of this room is polished to a lustrous sheen. A crimson velvet pennant edged with ivory hangs near a heavy, white muslin curtain. You also see a polished mother-of-pearl bin.
Obvious exits: out
>;e echo Room.current_or_new
--- Lich: exec1 active.
[exec1]>location
You carefully survey your surroundings and guess that your current location is Mist Harbor or somewhere close to it.
[exec1: #22407:
[Annex, Beacon Hall Lobby]
Simple, but elegant, the teakwood flooring of this room is polished to a lustrous sheen. A crimson velvet pennant edged with ivory hangs near a heavy, white muslin curtain.
Obvious exits: out]

3) Add the locker room as a new room. In our example here it is automatically assigned the room number 22408.


>go curtain
You step through the curtained opening.
[Annex, Booth]
You are standing in a secluded alcove facing a wall of small, locked doors. One of the lockers has been removed for you and placed on a marble counter. You also see a curtain.
Obvious exits: none
>;e echo Room.current_or_new
--- Lich: exec1 active.
[exec1]>location
You carefully survey your surroundings and guess that your current location is Mist Harbor or somewhere close to it.
[exec1]>peer curtain
You peer behind a curtain and see...
[Annex, Beacon Hall Lobby]
Simple, but elegant, the teakwood flooring of this room is polished to a lustrous sheen. A crimson velvet pennant edged with ivory hangs near a heavy, white muslin curtain. You also see a polished mother-of-pearl bin.
Obvious exits: out
[exec1]>peer curtain
You peer behind a curtain and see...
[Annex, Beacon Hall Lobby]
Simple, but elegant, the teakwood flooring of this room is polished to a lustrous sheen. A crimson velvet pennant edged with ivory hangs near a heavy, white muslin curtain. You also see a polished mother-of-pearl bin.
Obvious exits: out
[exec1: #22408:
[Annex, Booth]
You are standing in a secluded alcove facing a wall of small, locked doors. One of the lockers has been removed for you and placed on a marble counter.
Obvious exits: none]
--- Lich: exec1 has exited.


4) Add the peering tag to the locker room

It is critically important to get the syntax correctly here. You will be copy and pasting the room title of the outer Annex room into the command below, but you must also insert the backslash before the closing ] because these are special characters we need to escape. (I presume in copy/pasting, the leading backslash before the opening [ will not be removed by the user.)

Obviously, replace the room number here with the appropriate ones (I put in my examples the Beacon room numbers in bold above), or use a Room.current call instead.


>;e Room[22408].tags.push('peer curtain =~ /^\[Annex, Beacon Hall Lobby\]$/')

5) Link this room to the outer room:


>;e Room.current.wayto['22407'] = "go curtain"
>;e Room.current.timeto['22407'] = 0.2

6) Then link the outer room to the locker room:


>go curtain
[Annex, Beacon Hall Lobby]
Simple, but elegant, the teakwood flooring of this room is polished to a lustrous sheen. A crimson velvet pennant edged with ivory hangs near a heavy, white muslin curtain. You also see a polished mother-of-pearl bin.
Obvious exits: out
>;e Room.current.timeto['22408'] = 0.2
--- Lich: exec1 active.
--- Lich: exec1 has exited.
>;e Room.current.wayto['22408'] = "go curtain"
--- Lich: exec1 active.
--- Lich: exec1 has exited.

7) Link the proper public room to the Annex entry room and get its Lich map ID (in our example here it is 16700). Please make sure to choose the correct door...


>out
[Atrium, Annex Hallway]
Polished black marble peeks out from beneath the edges of a richly appointed ivory velvet carpet which stretches down the expanse of the hall. A trio of elegant beeswax candles impressed with tiny seashells sits upon a lilac wood shelf, and a single window at the far end of the hall lets in sunlight and an ever-present, albeit faint, hint of an ocean breeze and salty air. You also see a black door imprinted with the Moonstone Abbey coat-of-arms, an ivory door etched with the Beacon Hall Archives coat-of-arms, a purple door chiseled with the Rone Academy coat-of-arms and a green door ingrained with the Willow Hall coat-of-arms.
Obvious exits: north, south
>;e Room.current.timeto['22407'] = 0.2
--- Lich: exec1 active.
--- Lich: exec1 has exited.
>;e Room.current.wayto['22407'] = "go ivory door"
--- Lich: exec1 active.
--- Lich: exec1 has exited.
;whereami
--- Lich: whereami active.
Current room id: 16700
--- Lich: whereami has exited.

8) Add the final link from the outer Annex room back to the public room.


>go ivory door
[Annex, Beacon Hall Lobby]
Simple, but elegant, the teakwood flooring of this room is polished to a lustrous sheen. A crimson velvet pennant edged with ivory hangs near a heavy, white muslin curtain. You also see a polished mother-of-pearl bin.
Obvious exits: out
--- Lich: exec1 active.
--- Lich: exec1 has exited.
>;e Room.current.timeto['16700'] = 0.2
--- Lich: exec1 active.
--- Lich: exec1 has exited.
>;e Room.current.wayto['16700'] = "out"
--- Lich: go2 active.

9) Check you didn't forget any wayto or timeto calls

(Lots of stuff will spit out, but if it doesn't start asking you questions, you should be good)


;mapmap check

10) Save it and you're done


;e Map.save

Naturally, if you're gonna do work, post here saying so, and email the resulting database to Tillmen.

Franknozly
07-24-2014, 01:33 AM
So is anyone working on the db? If not I am claiming it for updates.

update lesser vruul area - remove uberfail mappings
remove supernode tag from hearthstone courtyard
add supernode to hearthstone porch
add node to temple store room

sent. Now it's up to Tillmen.

ROTOR
08-18-2014, 11:32 AM
working on ta'illistim rogue guild in prime.

ROTOR
08-18-2014, 12:08 PM
finished. sent map to tillmen. haven't done it before so hopefully it's useful.

Franknozly
08-22-2014, 03:30 PM
.... Tillmen has NOT updated the previous submission, your map submission cannot be used...

ROTOR
08-23-2014, 03:08 AM
Tillmen, did you not get my Illistim update or was it just not useable? Just wondering whether to resend or remap. Thanks.

Tillmen
08-23-2014, 12:35 PM
Prime map database is uploaded.

This is Franknozly's update. I took a look at Rotor's update to try to manually add the changes, but there didn't appear to be any changes. Maybe you didn't save your changes or sent the wrong file?

ROTOR
08-23-2014, 01:34 PM
There was only one change - in Ta'Illistim in the Royal Arboretum - going from room 13350 to 17837 (go gold door) which will allow getting into the rogue's guild from anywhere else. I can try again to send it to you. Perhaps I sent the wrong file but it was definitely working for me before this most recent update. Should be the file with the most recent date and highest number?

Tillmen
08-23-2014, 01:53 PM
I can just add it.

ROTOR
08-23-2014, 02:34 PM
Sweet stuff. Thanks.

Tillmen
09-26-2014, 03:35 AM
Prime Map database is uploaded.

Tillmen
09-27-2014, 11:25 PM
I just finished automating the map database upload process. Now, instead of all this forum stuff, download the new repository script (if you haven't already) and do something like this:

;repo checkout-mapdb
;repo download-mapdb
;mapmap stuff and junk
;repo upload-mapdb

You can't upload the map database unless you have it checked out. You'll only be able to checkout the map database if someone else doesn't have it checked out. You'll have up to 24 hours before the checkout expires. I may change the amount of time before it expires; I didn't put much thought into it. After 24 hours, if someone else decides to check out the map database, you can't upload anymore and you'll have to redo whatever you did. If you take less than 24 hours (and you should), other people will be able to check out the database as soon as you upload it, assuming it doesn't need to be approved.

If a database contains new StringProcs, then it stays in limbo until I read and approve the new StringProcs. This should happen much faster than the current system, because the server will send me an e-mail with the new StringProcs and I just need to enter one command to approve them. This approval is just to make sure someone doesn't insert a movement into the database that empties your bank account and hands the silvers to someone and then rerolls your character. I won't be testing the database to see if you broke it horribly. You should be testing your changes before uploading.

Khelbaen
01-02-2015, 11:56 AM
Don't know if this is the correct place to add tags still but here goes:
Instance: Platinum

Lich Room Number: 16981 tag "warrior guild sauna"
LRN: 16977 tag "warrior guild administrator"
LRN: 16996 tag "warrior guild icetub"
LRN: 16993 tag "warrior guild guildmaster"

all tags for Landing guild.

Vusit
04-09-2015, 01:43 AM
okay cant seem to get this to work, but can we get rooms 13037 and 17409 connected by go arch?

horibu
04-14-2015, 01:06 AM
So I'm trying to map a few rooms and when I go to use ;mapmap I get the following errors:

;mapmap new
--- Lich: mapmap active.
--- Lich: error: undefined class/module GameObj
C:/Games/lich/lich.rbw:2159:in `load'
C:/Games/lich/lich.rbw:2159:in `block (2 levels) in <module:Settings>'
--- Lich: mapmap has exited.

Any help as to why it is doing this?

Nahkaev
05-25-2015, 08:11 AM
Is it appropriate to update the map to include the travel delays from the black roots all over WL?

I made a .timeto_fixer sf script to temporarily fix these client side, for anyone interested in having their go2 AI route them more efficiently:


put ;e Room[268].timeto["249"] = 2.1
pause 1
put ;e Room[268].timeto["1775"] = 2.1
pause 1
put ;e Room[268].timeto["267"] = 2.1
pause 1

put ;e Room[298].timeto["296"] = 2.1
pause 1
put ;e Room[298].timeto["1776"] = 2.1
pause 1
put ;e Room[298].timeto["299"] = 2.1
pause 1

put ;e Room[296].timeto["8636"] = 2.1
pause 1
put ;e Room[296].timeto["8660"] = 2.1
pause 1
put ;e Room[296].timeto["297"] = 2.1
pause 1
put ;e Room[296].timeto["298"] = 2.1
pause 1
put ;e Room[296].timeto["290"] = 2.1
pause 1

put ;e Room[268].timeto["249"] = 2.1
pause 1
put ;e Room[268].timeto["1775"] = 2.1
pause 1
put ;e Room[268].timeto["267"] = 2.1
pause 1

put ;e Room[287].timeto["286"] = 2.1
pause 1
put ;e Room[287].timeto["6944"] = 2.1
pause 1
put ;e Room[287].timeto["280"] = 2.1
pause 1
put ;e Map.save

those are the ones I commonly run in to, if i missed some feel free to add

icedown
11-29-2015, 01:28 PM
Here is a map with updates for narost for the Icemule and Solhaven warrior guilds

http://www.icedown.net/map-1448820861.dat

Aethor
12-02-2015, 02:43 AM
map room 20046 add tags 'cleric alchemy cleaning supplies'

Haldrik
12-18-2015, 05:17 PM
I'm trying to update Oteska's Haven in River's Rest. It's pretty much broke at this point.

There is a set of rooms with identical descriptions and exits which all link to the incorrect room. There is also some missing waytos.

For example, room 11666 has a north exit which leads to 11667.
Room 11675 has the same north exit which leads to 11667.

I tried to add new rooms but the mapper already think a room exists.

So, I need to assign the duplicate rooms new room #s but unclear how to do this. I cannot use the add room command because its linked to the other room.
It sort of works now because the waytos warp you to the same room but some of them are still broken.

Thoughts?

Tillmen
12-18-2015, 06:53 PM
Fixing this sort of thing requires more knowledge of how the map database works than your standard mapping procedure. If it wasn't in River's Rest, I could run over to the room and give it a look and either fix it or give you some useful pointers, but since it's in River's Rest and I'm lazy, you're screwed.

My assumption is that there are two rooms that are in different places but have the same room title/description/paths. There are several ways to deal with this, and they are mostly terrible.

First, go to each of the identical rooms and type:

;e echo Room.current_or_new

If one of them shows up with a new room number, everything is good and right in the world (this isn't going to happen).

Second, perhaps someone used ";mapmap fix" incorrectly (they didn't, because no one uses that, even though it's in the instructions). To check if this is the case, go to each of the identical rooms and type:

;e echo Room.current.desc.length

In the map database, rooms can have more than one description. This is mostly to deal with different night/day descriptions for the same room, but it can rarely have other uses. When using ";mapmap fix", the script tests existing paths to see if you end up in the expected room. If you don't, it'll ask you if the rooms are the same. If you tell it they're the same, it'll combine them so they both have the same room number. If not, it will delete the path and create a new one to the different room. Someone may have said yes when they shouldn't have, which would add two unrelated room descriptions (and/or titles/paths) to the same room id. If the above command says "1", then this is not the case. If it's more than one, then it might be the case, but I won't go into it further because it's too unlikely.

So now we need to differentiate between the two horrible rooms. The best way to do this is with the unique_loot tag. If there's something that shows up in the "You also see" line that is permanent, such as an arch or a door or something, and it's in one room but not the other, then all is good and right in the world (unlikely). Type:

;e echo GameObj.loot.collect { |o| o.name }

to see the exact object name, and then type:

;e Room.current.unique_loot = [ 'whatever' ]

replacing whatever with the object name. Now, the room that has that object should keep the room number, and the room without the object should either be unknown, or might still tell you it knows the room id because of fuzzy room lookups. Either way, go to the other room and do a:

;e echo Room.current_or_new

and there should be two room ids. Then you can go over the whole area with a ";mapmap map" and a ";mapmap fix" and it should be good.

If unique_loot isn't an option, you can use a peer tag, which causes Lich to peer into the next room in order to discriminate between two rooms. This is nice because it lets you use either room as a target for go2, but it's terrible because it has to peer if you walk through the room with narost or uberbar running.

If the title/description/paths of each adjacent room is identical in each identical room (unlikely but actually has happened more than once), then you're stuck with treating the two rooms as one. You would need to create some creative StringProcs paths from each room to each adjacent room that will be sucessful regardless of which of identical room it's started in.

I left out the location verb property because it sounds like these rooms are in the same location.

It'll never work.

Haldrik
12-19-2015, 08:40 PM
Okay. I read all that. I'll check it out!

A couple of notes-
- There is definitely a creative proc involved already. So I assume someone tried to fix it.
- Some of the day/night descriptions aren't updated. I ran a ;mapmap fix and was able to combine the rooms but this was on my local map. I'm trying to get everything nailed down before i do it on the repo.
-Is there any way to search the database for descriptions? There is definitely two room numbers for the below room. I just don't want to have to wait for a day/night cycle to use ;mapmap to fix.
-Assuming i can't fix the rooms. Is there a way to have multiple exits go to the same room? For example wayto north -> 555 and wayto south-> 555 overwrite each other.


I fixed this with mapmap and merged the rooms. But have not done it for the repo yet.

11676
[Oteska's Haven, Armory Rooftop]
The rooftop is surprisingly sturdy. A low parapet lines the roof facing the muddy walkway between the buildings. The light from the moon barely filters through the thick fog. From this vantage point the rooftops of the other wooden buildings are clearly visible through the fog. You also see a squirrel's skull.
Obvious paths: down
>
Your disk arrives, following you dutifully.
>;e echo Room.current.desc.length
--- Lich: exec1 active.
[exec1: 2]
--- Lich: exec1 has exited.

Haldrik
12-25-2015, 05:48 AM
-I've merged Oteskas day/night.
-There is no way to fix the dual rooms using the method above. There is a creative proc to get some movement out of it.

We definitely need a proc that takes into account a child/escort mission for any procs that have multiple movements. Is there any out there ?

-Removed Briarstone Court node from go2 pathing via increased timeto. Travel time should not be significantly impacted. <0.5 second increase.

Gnomad
01-02-2016, 09:51 AM
Cleric says, "This spot is a problem."
DEAD>;e echo Room.current.inspect
--- Lich: exec1 active.
[exec1: @wayto={"9816"=>"northeast", "9818"=>"east"}
@paths=["Obvious exits: northeast, east"]
@image_coords=[1150, 491, 1160, 501]
@terrain=nil
@description=["Several gouges mar the walls on either side of the cramped passageway, deep enough to fit a giantman's arm within. Pale lichen festoons the small ledges upon the scarred earth, trailing toward the floor in thin waves. A few shattered bones lie beneath the fungus, each obscured by the fuzzy grey-green tendrils."]
@image="en-tower-1264234799.png"
@climate=nil
@title=["[Maaghara Labyrinth]"]
@check_location=nil
@timeto={"9816"=>0.2, "9818"=>0.2}
@id=9817
@location="the Maaghara Tower"
@tags=[]
@links=[]]
--- Lich: exec1 has exited.
Cleric whispers, ";locate cleric."
DEAD>
Cleric seems to lose some dexterity.
DEAD>;locate cleric

Cleric:

[Maaghara Labyrinth] (9786)
Several gouges mar the walls on either side of the cramped passageway, deep enough to fit a giantman's arm within. Pale lichen festoons the small ledges upon the scarred earth, trailing toward the floor in thin waves. A few shattered bones lie beneath the fungus, each obscured by the fuzzy grey-green tendrils. You also see antsy lake spirit (flying around), Cleric disk.
Also here: Me (dead lying down to test something, not because I'm bad at the game), Cleric
Obvious exits: northeast, east
Cleric whispers, "It's always THIS ROOM."


DEAD>;e echo Room[9786].inspect
--- Lich: exec1 active.
[exec1: @wayto={"9785"=>"northeast", "9787"=>"east"}
@paths=["Obvious exits: northeast, east"]
@image_coords=[1070, 811, 1080, 821]
@terrain=nil
@description=["Tiny pebbles dot the floor randomly, their dark hue a stark contrast to the pale roots which slither across and up into the curving ceiling. Light scratches mar the smooth wall, some twisting jaggedly several different ways while others form straight, rough lines in the earth. A few patches of lichen line the walls outside the ragged scratchy lines."]
@image="en-tower-1264234799.png"
@climate=nil
@title=["[Maaghara Labyrinth]"]
@check_location=nil
@timeto={"9785"=>0.2, "9787"=>0.2}
@id=9786
@location="the Maaghara Tower"
@tags=[]
@links=[]]
--- Lich: exec1 has exited.

I've got no idea what's going on here, so I figured I'd post it up.

Tillmen
01-10-2016, 01:34 PM
The room description for that room was changed (double spaces between sentences were changed to single spaces), so there is no longer an exact match for it. Also, the regex lnet used to find a close match was flawed, so basically every room description matched, so it just found the first room whose title and obvious exits matched. lnet has been updated to fix that.

Rozy
01-14-2016, 07:57 AM
There are two rooms in the FWI shopping area labeled as 3870.

[Heleconia Way - 3870]
A dragonfly hovers over the path momentarily before landing on a yellow flower growing beside the sandy trail. A weather-beaten wood boat with a large hole in its hull sits to one side of the path, half buried in the sand. Clumps of grass and hardy purple wildflowers have taken root, threatening to overtake what little is left of the craft. You also see a short cobblestone edifice with a gold-veined marble roof, a dark speckled marble storefront with a chipped slate roof, a shrub-lined sandstone cottage, a warped wooden hut and an ornate glass-front shop with a layered tile roof.
Obvious paths: east, west

[Anthurium Way - 3870]
The soft sand of the path comes to a crossroads here with a less traveled route proceeding west and fresh footprints leading to a large sandstone building to the south. An empty cart with a broken wheel sits off to one side of the western path, the axel propped up on a wooden crate awaiting its owner's return. Flowerpots filled with bright yellow-leafed plants and deep green ivy fill the cart, their journey to a new home interrupted by the wheel's untimely demise. You also see a bronze-gated sandstone tower, a silk-covered white cabana with an ornate seashelled roof, a bloom-covered cozy bungalow with a woven seaweed roof, a shrub-lined sandstone cottage with a gold-veined marble roof and a simple shop.
Obvious paths: east, south, west

Gnomad
01-14-2016, 04:28 PM
The room description for that room was changed (double spaces between sentences were changed to single spaces), so there is no longer an exact match for it. Also, the regex lnet used to find a close match was flawed, so basically every room description matched, so it just found the first room whose title and obvious exits matched. lnet has been updated to fix that.

Cool, thanks. Didn't even think to look for double vs single space. I'll keep an eye out in the future.

Haldrik
01-14-2016, 09:26 PM
There are two rooms in the FWI shopping area labeled as 3870.

[Heleconia Way - 3870]
A dragonfly hovers over the path momentarily before landing on a yellow flower growing beside the sandy trail. A weather-beaten wood boat with a large hole in its hull sits to one side of the path, half buried in the sand. Clumps of grass and hardy purple wildflowers have taken root, threatening to overtake what little is left of the craft. You also see a short cobblestone edifice with a gold-veined marble roof, a dark speckled marble storefront with a chipped slate roof, a shrub-lined sandstone cottage, a warped wooden hut and an ornate glass-front shop with a layered tile roof.
Obvious paths: east, west

[Anthurium Way - 3870]
The soft sand of the path comes to a crossroads here with a less traveled route proceeding west and fresh footprints leading to a large sandstone building to the south. An empty cart with a broken wheel sits off to one side of the western path, the axel propped up on a wooden crate awaiting its owner's return. Flowerpots filled with bright yellow-leafed plants and deep green ivy fill the cart, their journey to a new home interrupted by the wheel's untimely demise. You also see a bronze-gated sandstone tower, a silk-covered white cabana with an ornate seashelled roof, a bloom-covered cozy bungalow with a woven seaweed roof, a shrub-lined sandstone cottage with a gold-veined marble roof and a simple shop.
Obvious paths: east, south, west

I just just a brief look, one of the procs is messed up. I'll take point on this and fix it up tonight.

Haldrik
01-16-2016, 04:06 AM
Hey Tillmen,

Could I get some suggestions on fixing these rooms? 3870 is linking to a room that doesn't match. It looks like maybe they were merged somehow. There is waytos under 3870 for BOTH rooms. The actual 3870 (west/east/south) and the (west/east) room. I see the descriptions for both rooms in here as well. And titles.

I honestly feel like nuking both rooms would be the fastest way. But not sure how to do that. Or if any bad consequences. Any recommendations?

I'm guessing if I need to do it manually, I would delete all the duplicate descriptions, titles, waytos.... (sounds like a lot of work!)


This is the east/west room.

[Heleconia Way]
The sounds of insect life can be heard, but in the dim light here you can't see them. A weather-beaten wood boat with a large hole in its hull sits to one side of the path, half buried in the sand. A lantern with five or six glow worms in it has been set on the boat's hull to light the area. You also see a short cobblestone edifice with a gold-veined marble roof, a dark speckled marble storefront with a chipped slate roof, a shrub-lined sandstone cottage, a warped wooden hut and an ornate glass-front shop with a layered tile roof.
Obvious paths: east, west
>
Your disk arrives, following you dutifully.
>;e echo Room.current.inspect
--- Lich: exec1 active.
[exec1: @wayto={"23556"=>"go edifice", "16482"=>"go cottage", "16483"=>"go hut", "16484"=>"go shop", "16550"=>"go storefront", "16381"=>"go cottage", "16547"=>"go cabana", "3872"=>"south", "20450"=>"go bungalow", "12268"=>"east", "12270"=>"west", "24403"=>"go tower"}
@paths=["Obvious paths: east, west", "Obvious paths: east, south, west"]
@image_coords=[3293, 1745, 3306, 1755]
@terrain=nil
@description=["A dragonfly hovers over the path momentarily before landing on a yellow flower growing beside the sandy trail. A weather-beaten wood boat with a large hole in its hull sits to one side of the path, half buried in the sand. Clumps of grass and hardy purple wildflowers have taken root, threatening to overtake what little is left of the craft.", "The sounds of insect life can be heard, but in the dim light here you can't see them. A weather-beaten wood boat with a large hole in its hull sits to one side of the path, half buried in the sand. A lantern with five or six glow worms in it has been set on the boat's hull to light the area.", "The soft sand of the path comes to a crossroads here with a less traveled route proceeding west and fresh footprints leading to a large sandstone building to the south. An empty cart with a broken wheel sits off to one side of the western path, the axel propped up on a wooden crate awaiting its owner's return. Flowerpots filled with bright yellow-leafed plants and deep green ivy fill the cart, their journey to a new home interrupted by the wheel's untimely demise.", "The path comes to a crossroads here with a narrower path proceeding west and a wider one leading south towards a large sandstone building. Two torches have been placed here but one has gone out making it difficult to see. An empty cart with a broken wheel sits off to one side of the western path. Flowerpots filled with leafed plants and ivy fill the cart, their journey to a new home interrupted by the wheel's untimely demise."]
@image="ifw-isle_of_four_winds-1310232949.png"
@climate=nil
@title=["[Heleconia Way]", "[Anthurium Way]"]
@check_location=nil
@timeto={"23556"=>0.2, "16482"=>0.2, "16483"=>0.2, "16484"=>0.2, "16550"=>0.2, "16381"=>0.2, "16547"=>0.2, "3872"=>0.2, "20450"=>0.2, "12268"=>0.2, "12270"=>0.2, "24403"=>0.2}
@id=3870
@location="Mist Harbor"
@tags=[]
@links=[]]
--- Lich: exec1

And this is the west/east/south room.



[Anthurium Way]
The path comes to a crossroads here with a narrower path proceeding west and a wider one leading south towards a large sandstone building. Two torches have been placed here but one has gone out making it difficult to see. An empty cart with a broken wheel sits off to one side of the western path. Flowerpots filled with leafed plants and ivy fill the cart, their journey to a new home interrupted by the wheel's untimely demise. You also see the Kalros disk, a bronze-gated sandstone tower, a silk-covered white cabana with an ornate seashelled roof, a bloom-covered cozy bungalow with a woven seaweed roof, a shrub-lined sandstone cottage with a gold-veined marble roof and a simple shop.
Obvious paths: east, south, west
>;e echo Room.current.inspect
--- Lich: exec1 active.
[exec1: @wayto={"23556"=>"go edifice", "16482"=>"go cottage", "16483"=>"go hut", "16484"=>"go shop", "16550"=>"go storefront", "16381"=>"go cottage", "16547"=>"go cabana", "3872"=>"south", "20450"=>"go bungalow", "12268"=>"east", "12270"=>"west", "24403"=>"go tower"}
@paths=["Obvious paths: east, west", "Obvious paths: east, south, west"]
@image_coords=[3293, 1745, 3306, 1755]
@terrain=nil
@description=["A dragonfly hovers over the path momentarily before landing on a yellow flower growing beside the sandy trail. A weather-beaten wood boat with a large hole in its hull sits to one side of the path, half buried in the sand. Clumps of grass and hardy purple wildflowers have taken root, threatening to overtake what little is left of the craft.", "The sounds of insect life can be heard, but in the dim light here you can't see them. A weather-beaten wood boat with a large hole in its hull sits to one side of the path, half buried in the sand. A lantern with five or six glow worms in it has been set on the boat's hull to light the area.", "The soft sand of the path comes to a crossroads here with a less traveled route proceeding west and fresh footprints leading to a large sandstone building to the south. An empty cart with a broken wheel sits off to one side of the western path, the axel propped up on a wooden crate awaiting its owner's return. Flowerpots filled with bright yellow-leafed plants and deep green ivy fill the cart, their journey to a new home interrupted by the wheel's untimely demise.", "The path comes to a crossroads here with a narrower path proceeding west and a wider one leading south towards a large sandstone building. Two torches have been placed here but one has gone out making it difficult to see. An empty cart with a broken wheel sits off to one side of the western path. Flowerpots filled with leafed plants and ivy fill the cart, their journey to a new home interrupted by the wheel's untimely demise."]
@image="ifw-isle_of_four_winds-1310232949.png"
@climate=nil
@title=["[Heleconia Way]", "[Anthurium Way]"]
@check_location=nil
@timeto={"23556"=>0.2, "16482"=>0.2, "16483"=>0.2, "16484"=>0.2, "16550"=>0.2, "16381"=>0.2, "16547"=>0.2, "3872"=>0.2, "20450"=>0.2, "12268"=>0.2, "12270"=>0.2, "24403"=>0.2}
@id=3870
@location="Mist Harbor"
@tags=[]
@links=[]]
--- Lich: exec1 has exited.

Tillmen
01-18-2016, 04:56 PM
... 3870 is linking to a room that doesn't match. It looks like maybe they were merged somehow. ...

The root of this problem was probably Arroke's playershop. You enter the shop from room 12269, and when you exit you may end up in room 12269 or 3870. Apparently someone decided to combine these very different rooms into one room number. This more or less completely breaks the area.

When 12269 was deleted, the room number was reused by later mapping, so I had to create a new room number for the new 12269, copy it over, and change any other rooms that had movements leading to this room. Then I had to create a new 12269 with the previous title/description/paths/image/etc, and remove those things from room 3870. However, since I don't actually have access to FWI, and there wasn't an easy way to figure out which waytos really belonged to 3870 and which belonged to 12269, I just deleted all of them. I also created a wayto from Arroke's shop to 12269 which includes restarting go2, and tagged the room so that mapmap wouldn't try to map it automatically. That should keep this from happening again if it was caused by someone answering yes to mapmap without reading or understanding what it was asking. However, if someone did this manually because Arroke's shop is broken, then all hope is lost.

So, someone with access to FWI needs to run mapmap on the area to restore the missing waytos.

Also, I attempted to remove any waytos that cast 506 for movement roundtime, and leave in casting 506 for searching. There were 433 waytos using 506, so I probably messed something up.

Haldrik
01-18-2016, 05:29 PM
The root of this problem was probably Arroke's playershop. You enter the shop from room 12269, and when you exit you may end up in room 12269 or 3870. Apparently someone decided to combine these very different rooms into one room number. This more or less completely breaks the area.

When 12269 was deleted, the room number was reused by later mapping, so I had to create a new room number for the new 12269, copy it over, and change any other rooms that had movements leading to this room. Then I had to create a new 12269 with the previous title/description/paths/image/etc, and remove those things from room 3870. However, since I don't actually have access to FWI, and there wasn't an easy way to figure out which waytos really belonged to 3870 and which belonged to 12269, I just deleted all of them. I also created a wayto from Arroke's shop to 12269 which includes restarting go2, and tagged the room so that mapmap wouldn't try to map it automatically. That should keep this from happening again if it was caused by someone answering yes to mapmap without reading or understanding what it was asking. However, if someone did this manually because Arroke's shop is broken, then all hope is lost.

So, someone with access to FWI needs to run mapmap on the area to restore the missing waytos.

Also, I attempted to remove any waytos that cast 506 for movement roundtime, and leave in casting 506 for searching. There were 433 waytos using 506, so I probably messed something up.

Damn. It initially looked a lot simpler. Thanks for jumping in on this.

BigWorm
04-21-2016, 01:00 AM
Rogue Guild tags for Illistim:



Room[17883].tags << "rogue guild administrator"
Room[17886].tags << "rogue guild master"
Room[17881].tags << "rogue guild workshop"
Room[17867].tags << "rogue guild bar"
Room[17880].tags << "rogue guild shop"

BigWorm
05-06-2016, 08:46 PM
This OTF room is incorrectly tagged as having aloeas stem

;e Room[12046].tags.delete("some aloeas stem")

Haldrik
05-18-2016, 01:24 PM
This OTF room is incorrectly tagged as having aloeas stem

;e Room[12046].tags.delete("some aloeas stem")

There is so many fucked up herb rooms in OTF. I have no idea why. Herb tags are supposed to update automatically when a herb is found. Is it possible its a day/night issue?

Also, Tillmen is it possible you could update the LNet tag script to remove herb tags on the message that an item cannot be found?

Jymamon
12-15-2016, 11:48 PM
;e Room.current.image = 'wl-micefilename.png'

Lemonkyst
03-25-2017, 08:31 PM
On Teras Isle in Prime.

[alchemy: error: failed to find trash room]
>
[alchemy: error: failed to find a reagent shop]

REGEANT
I went to room 13063 [Thistleberry's Hut, Repository - 13063]
and checked for tags. None.

>;e echo Room.current.tags
--- Lich: exec1 active.
[exec1: []]
--- Lich: exec1 has exited.

TRASH

Trash room with barrel is 12537 On Teras Isle in Prime.

--- Lich: exec1 active.
[exec1: ["node", "supernode"]]
--- Lich: exec1 has exited.

Can someone add these tags? Thanks

horibu
03-25-2017, 10:20 PM
you know you can do it yourself. You already did the debugging to know they didn't have the tags. Process below

Step 1. ;repo checkout-mapdb
Step 2. go to room and type ;e Room.current.tags.push('taghere')
Step 3. ;e Map.save
Step 4. ;repo upload-mapdb

tangman
05-07-2017, 01:46 AM
Hi folks,

I was wondering if it's possible to update the image file of a currently active map. I mapped some rooms (tables) in Cysaegir so that ;go2 would work while at the table. Then I edited the image file, and mapped them on ;narost.

For reference, my image with the additions: http://imgur.com/a/cxj1J

Tillmen
05-07-2017, 02:06 PM
The new image will be automatically uploaded with the ";repo upload-mapdb" command as long as at least one room uses that image and it has not already been uploaded. However, only the image filename is used to tell if an image has already been uploaded, which is why you see a timestamp at the end of the filename of most images in the map folder.

zephyrii
08-13-2017, 08:54 AM
edit: nevermind - found the problem

Kaldonis
03-20-2018, 06:47 AM
Took awhile, but I finally have a character in House Paupers, so I spent some time last night improving the lockers for WL, Sol, and FWI. Things were a bit messy, and also I like adding features (auto-closing locker) as well as trying to either make rooms unique or add a puzzle solver.

Long story short, WL isn't working 100% as I ideally want it and I'm gonna keep working on it. But hopefully anything I upload is always an improvement. In that sense, nothing is broken as far as I know, and there are less orphaned rooms now than there were before.

If you find a problem, please PM me.

Kaldonis
04-11-2018, 07:41 PM
Looking at adding the boot / log for RR into mapdb. I looked at how the ticket is handled for the cutter and it's not nice. Darkstone short sword is worse I think, but I'll paste that one to start with.

Little help, please. Looks like crap on the forums, peek at this (https://pastebin.com/WnBh6hQY). You can find it via ;e echo Room[6955].inspect in Prime mapdb.

I don't really like it using lootsack or the limited range of nouns it thinks to look at. But I don't want to do a DownStream Hook. I will put a link to the Cutter code once I get it sorted.

Update: Have a pair of scripts on my computer for the RR boot that work. Just need to port them to StringProc and test it in the actual mapdb. I'll do it sometime soon!

Final result (https://pastebin.com/L0QvgmPV) (and I'm really sorry) works!

Here is a relatively hacky shell script (I called lic2proc.sh) which will barf a one-liner you can paste when you call on a lich script. It strips lines beginning with # comment symbol (NB: ^first character). It's also gonna preserve your tabs and returns so that there's any hope of extracting it to a readable form again. It will deal with the common escapes (double quote and some hashes), but it cannot handle a script with at (@) because I use it as a sort of variable in the tr compression with sed.

(It occurs to me I am explaining leaning toothpicks that produce line-noise code. I apologize again.)



#!/bin/bash
printf "StringProc.new(\""
cat "$1" | sed '/^#/d' | tr '\n' '@' | sed 's/@/\\n/g' | tr '\t' '@' | sed 's/@/\\t/g' | sed 's/#{/\\#{/g' | sed 's/"/\\"/g'
printf "\")"


That way you can port your possibly almost readable code into a retard StringProc.

Tetreves
08-17-2021, 10:26 PM
Not sure if this thread is still active, but I was reading it last night, learned some things by playing around with it, made a few small changes and tested it, then uploaded the map last night. The areas that weren't working were in the Silvermule Gaming Hall locker annex - specifically Silvergate (cloudberry arch). I think it needs approval with the mini-script I made.

Mice
08-18-2021, 08:12 AM
Not sure if this thread is still active, but I was reading it last night, learned some things by playing around with it, made a few small changes and tested it, then uploaded the map last night. The areas that weren't working were in the Silvermule Gaming Hall locker annex - specifically Silvergate (cloudberry arch). I think it needs approval with the mini-script I made.

I consider it still active. I learned most of the fundamentals from this thread — it’s a fantastic resource.