This is both a wiki (a website editable by all) and a blog (an online diary about the stuff AlexSchroeder reads and does). If you’re a friend or relative, you might be interested in reading Life instead of this page. If you’ve come here from an RPG blog, you might want to head over to RPG. There are other similar categories to be found on the SiteMap.
Für Rollenspieler gibt es ebenfalls eine eigene RSP Kategorie.
I’m currently reading Creating the perfect GPG keypair and it makes me want to cry. Keeping them master key on an encrypted USB stick. Where will I keep it? How will I make sure I won’t loose it over the next five years? Keeping a revocation certificate—somewhere else! How will I make sure I won’t loose that?✎
Perhaps it’s easier no to rely on all that. I’m sure there’s a different set of requirements out there that would fit me. A set of requirements that doesn’t require me to do all that. A set of requirements for ordinary people.✎
Consider this: If you’re my friend, how do you know that I’m the person I claim to be? We keep in contact. We exchange messages every now and then. Thus, if my keys expire every now and then, shouldn’t that work just the same? I will have to rebuild my web of trust, but to be honest, I don’t have a web of trust. If you want to make sure that I’m the person you think I am, you will have to verify this by other channels. Compare fingerprints on the phone, using a different channel.✎
My current project is “The Sewer Prison”.✎
And since I didn’t find any new bugs and since I didn’t need to implement any new features, I decided to call it a day and tag it version 1.0! Not bad, from nothing on Feb 9 to release 1.0 on March 1.✎
Gridmapper makes me happy.✎
I think we’re getting closer to a version 1.0!
Thinks I’m still interested in implementing:
The new help element no longer shows up in IE 11. I spent so much time getting moving from a pure SVG help to a mixed SVG/XHTML help that I don’t really feel like fixing this. This is frustrating. This also means that Text Import and Text Export won’t work. This relies on a XHTML textarea the user can edit. This also means that arbitrary labels (using
l) won’t work. This relies on a XHTML text input field the user can edit.✎
Contributions I’ve seen:
“Gridmapper is a neat little classic-style dungeon mapping utility: It outputs to SVG, which is a vector format supported by many programs, including Blender, a 3D graphic program. I thought it would be simple to import one into the other, and for someone more experienced with SVG and Blender, it probably would’ve been easy. For me, it was messy, but I’m still happy with the results.”
“And I didn’t see any maps created with Gridmapper yet (expect for the test maps). So here is one of mine: The Aquarium.”✎
“Takie rzeczy wychodzą na szybko.” (Google translate: “These things go on a fast.”)
Please leave links to your contributions in the comments.
A difficult decision! Many people had reported using Chrome on Windows and not getting the
$ keypress. Sam’s patch finally fixed that. Now I’ve had reports of somebody using Chrome on GNU/Linux and not getting the
$ keypress. What a mess!
So: Is it possible to get rid of
$? Yes it is. But replace it with what?
s for secret doors? What about
s for stairs? The solution is to use variants. Place a door and cycle through the variants using
v and you’ll get a secret door, a concealed door, a double door (a gate). Same thing for stairs: cycle through the variants using
v and you’ll go from a 2×1 stair to a very short 1×1 stair, to a cramped 1×1 spiral staircase, to a large 2×2 spiral staircase, to a broad 2×2 stair fit for an opera house.
It’s a trade off. Any map symbol you are using multiple times on your map are better on dedicated keys. Are traps, pilars and statues valuable enough to have separate keys?✎
There is one additional problem I have. Such changes also break existing links. To give you an example, the sequence
$$ would place a secret door and rotate it to the north wall. That needs to be replaced by
I still feel that we’re early enough in Gridmapper’s development to make such changes, but still, it feels unfair to those who have maps with many secret or concealed doors, or gates.✎
Also, the help screen looks terrible, now.✎
In fact, I made further incompatible changes to parsing the link’s query string. The trap, pillar and statue no longer advance the position. Thus, if you’re suffering from that problem, you need to append a space (
%20) to every
b in your query string.✎
That’s pretty cool, I think.✎
An update on my todo list:✎
If you’re curious about the code and would like to read blog posts about aspects of it, feel free to ask. I might write something up.✎
OK, I wasn’t happy with the link export. It’ll work for a while, but I want it to work for a MEGADUNGEON. There are limits imposed on the length of URLs – the browser imposes some, the webserver imposes some, it’s a mess.
In comes Text Export and Text Import – also known as executing Gridmapper code, scripting style!
So, you start working on your megadungeon. Then you click the Text Export link and the text area beneath it fill up with your Gridmapper code. Save it in a text file. The next day you want to work on it some more. Paste the code into the same textarea and hit Ctrl Enter. Of you go!
(0,0) f f fff f f fff f f f f f f f f f fff ff f f f f f f f f f f f f f f fff fff fff fff b
I wrote some more about scripting Gridmapper in the README file.
With the extra layer – “the map below” – finally implemented, it’s time to look for other Gridmapper challenges. This little project makes me so happy. It looks cool, changes are fast to make. I love those early phases of projects that are going well.
So, here’s some stuff that I still want to do:
How to upgrade a local copy of Gridmapper containing a dungeon of yours?
The following procedure should work:
Example of such a URL:
Everything after the questionmark is a script:
%0Aencodes Enter (moves one down)
%20encodes Space (moves one right)
wis wall (to the left)
.is a micro-pause
dis a door (at the top, because there’s already a wall to the left)
You can take this URL fragment and recreate your map elsewhere, too! To take the example above:
If you use Gridmapper on a public server, you can prepare those links and share them with your friends. Automatic map sharing without storing anything on the server. The link contains all the info.
Remember former Mozilla CEO Eich? I recently read How One Stupid Tweet Blew Up Justine Sacco’s Life and started reconsidering. Where do I stand on this issue? The thoughts turned from society and how we react as mob down to the individual and questions of guilt and ethics. Where’s Internet Ethics when we need it. ✎
On Google+, Marcel Schnau said that he thinks it basically comes down to a lack of moderation. I left a comment saying that I’m not sure. My experience on Twitter, Facebook and Google+ has been very positive. Personally, USENET was where I learned how to wear Asbestos Underwear. I still think we’ll need a lot more reflection on these topics in order to get a grip on this Internet thing, as a society. We lack Internet culture.✎
I'm using culture in the sense of shared practices, common assumptions, etc. In the days of Netiquette, for example, I don’t remember people talking about “forgive and forget”. I still remember how surprised I was when I first stumbled upon it.✎
To give you another example: We all know how to deal more or less with thorny issues. Some people have problems concerning their looks and still we want to treat them like everybody else, for example. We know that it’s not OK to have our decisions influenced by the acne on somebody’s face. Do we know that it’s not OK to have our decisions influenced by the pictures of a party on Facebook? How long ago does it have to be? This doesn’t come naturally to use, because our parents taught us about acne but not about Facebook. Dealing with social media, perfect records, searchability, big data – it’s not part of our shared practices, it’s not part of our culture. Yet.✎
Gridmapper now comes with a demo built in. I wanted to write some documentation, so I considered adding it to the README file. It can be read over on GitHub. But I know how it is. If you need to read a separate document in order to understand a user interface, people will not be coming back to the application. I decided I wanted a screencast or something equivalent. Short, sweet, stuff moving around on the screen, but I didn’t want to use a separate video. A separate video poses the same problem: Once you’re done viewing the video, will you remember it all and return to the application? Maybe you will, maybe you won’t. And what about updates to the software? Editing those videos and bringing them up to date is a major pain down the line.
That’s when I decided to write a demonstration within the application. I already had the code to recreate a map from a string of commands. I needed that in order to recreate a map from the URL. The OSR Logo is an example of this. I just needed a few more things. Positioning. Wall Mode. Pausing. Slow moves accross the screen. The hardest thing to explain is Wall Mode, I think.
Yeah, why Wall Mode? At first, I tried to do something that would allow me to use the mouse on the walls. But getting this right was tedious. I can’t really draw straight lines using a mouse. Can you? This was terrible, That’s when I decided that Gridmapper needed much better keyboard support. That was going to be a real win as far as I am concerned!
So now we basically have scripting. I felt like I was writing a byte code interpreter.
I’m not sure where to go next. Things on my mind.