Sketchbook, Your World! README

By Colton Hill, Ivan Soto, and Peter Kubek. Originally by Mason Armstrong and NS Studios.

Credits

Introduction

Welcome to Sketchbook, Your World! This isn’t exactly a game per se, but is more like an environment builder and chat client. You get to build maps to either model something in the real world or to create your own environment, or maybe to serve as a sort of minigame for others to complete.

Notes

To start off with, this game is played online. There is no option to play offline. Anyone can build maps and publish them in the unofficial menu, but they must be approved by an admin to show up in any other menus. If you want a list of the possible chat commands, type /help

System Requirements

Keys

Movement Keys

Informational Keys

In-game Settings Keys

Online Interaction Keys

Miscellaneous Keys

Some special menu keys

These keys might be available in some menus.

Virtual input

As of 4.7.5, the virtual input, the programatic text box that doesn’t actually show up on the screen, has been dramatically improved. Version 4.7.6 saw selection features. Version 4.7.7 saw more robust features and better standardization of controls. Keystrokes are as follows:

Notes

  1. As with standard behavior in multiline edit controls with only one line in them, pressing up and down arrow will navigate to the beginning and end of this line respectively. To read back the input without moving your cursor, use control+up/down.
  2. If the clipboard contains multiline text but you are pasting into a single line input, the text will be truncated at the first line break.
  3. If there is a selection, any addition of text to the input by typing or pasting automatically deletes the selected text, replacing it with that which was entered.
  4. If instead the cursor is just moved by a navigation gesture but without holding shift, unselects the selected text.
  5. Holding shift with the movement keys will extend the selection in that direction.

Virtual Dialog (Form)

An increasing number of prompts within the game are presented as virtual forms. These forms are designed to mimic the general way of interacting with an on-screen user interface from the keyboard. The following keystrokes apply.

Note that the virtual input mentioned above serves as the text input box in such dialogs, and thus all its keys apply in edit controls.

Ways of looking around

Sonar

The sonar, new in 3.0.7, plays sounds based on what’s around you. It will scan in the direction you are facing and play a sound where there is an object (Either a hazard, a wall, air, a staircase (Up or down), a new surface, or a vanishing platform. If you toggle off the sonar following you, you can face it in whatever direction you want, and walk, and it will scan in the direction you want rather than your current direction.
When the sonar is in both directions mode it will play indicators for both left and right, and forward if in 3d, at different pitches. Left is lower pitched, right is higher pitched, and forward is even higher pitched. When you are jumping or falling, the sonar will scan both below, and if you start moving, in the direction you are moving. This will allow you to see if you are falling into a hazard or a platform. The below indicator is always played at normal pitch.

Camera

The camera is a freely moveable indicator that you can move to get a feel for the environment around you. It will indicate air with a burst of noise, tiles with a high pitched version of the step sound, walls with a high pitched version of the bump sound, other players with a high beacon beep, and hazards with a descending whoosh.
Hold g and some movement keys to use it. Release g to reset it to your position.
While holding g you may also press d to have what the camera found indicated to you in text, or t to replay the sound indicator for the square the camera is on.
By default, you will hear other player’s camera sounds as they move their’s around, but you may toggle this off with f11.
By default, the camera will bounce off walls, but maps can change this on either a map-wide or per-wall basis. If it is bouncing off walls, it may play the wall bump sound but it will remain on that side of the wall, it is not inside it.

The spyer

By holding shift and pressing a movement key, you can look out in that direction to get an idea of what lies ahead. The spyer will indicate things like the type of surface, the dimensions of a hazard, the destination of a travel point, the state of a passage, or the presence of other objects, including air if you are on a platform. It also will tell you the distance to that object. Note that a map may disable the spier altogether, create zones where it cannot penetrate, or hide certain objects from it. If it is enabled, do not always assume it will find everything.

Player beacons

If beacons are on, you will be notified of players near you by a continuous blip blip at a random speed. Each player will have their own beacon speed so that you may tell them apart.

Sign and door indicators

IN the preferences menu you can set whether you want signs and doors to loop or beep when you step. If signs are set to loop, you will hear a continuous ding ding at their location, otherwise you will hear a clink when you walk and one is in that direction. If doors are set to loop you will hear the door’s loop at its position, otherwise you will hear a shortened version of its loop, if available, as you step and it is near.
Note that doors can have any loop and only some of them have corresponding shortened versions. If a shortened version of a given door loop does not exist and you have your mode set to beep, you will hear nothing. It is recommended therefore that you have doors set to loop.

Tracking objects and points of interest

New in 5.0 is the ability to track objects and so-called points of interest. You can press d to open a menu of objects, and t to open a menu of points of interest. Then once something has been selected, press y to report directions, or shift y to stop tracking. Along with the locater beep that plays at the location of the indicated object, there is another beacon that is used to indicate the distance to the currently tracked object. If you are tracking something, this beacon will beep periodically, the faster beeping indicating a shorter distance. Once you are directly on top of the object tracking will be canceled automatically.

The Builder

New in 2.4.0, the builder will allow you to easily and efficiently create maps. Just select what you would like to spawn, and press enter. It will guide you through a wizard asking you for the things it needs to successfully spawn the selected item. The builder is merely a set of shortcuts for spawning things in the map; It performs most of its functions by inserting lines of map data when you fill out the wizard prompts. To remove or edit the properties of an object the builder inserted, you will have to either edit the raw data directly or use the edit/remove line menus in the builder menu, which will only work on individual lines. The exception to the builder just editing map data is managing contributors and toggling public or premium status of a map. It is the only way to do such.

Builder points (paid users only)

Builder points (as of version 4.7) allow you to use the camera to set the boundaries for objects built via the builder menu. When these are set and you go to build an object, some coordinate fields will be filled in with their values already.
Hold down the G key to activate the camera and move the camera around to your liking. Once the camera is where you want it, press J, L, K and I to place selection points. In 2d mode, I and K are top and bottom, in 3d mode, I and K are front and back and shift I and K are top and bottom. You can press APOSTROPHE to here where the selection points are set, or press the semicolon key to clear the selection points all at once. Do note that whenever the selection points are used, that is when an object that fills in its values with them is built, they are cleared automatically.

Making a new map

If you send the command /newmap to the server with no parameters, you will receive a set of prompts designed to help you begin building a map. Otherwise you may send the parameters directly with the slash commands.
/newmap mapname maxx surface Creates a new 2d map named mapname, with maximum x maxx, and filled with a platform of type surface from 0 to maxx at y 0.
/newmap3d mapname maxx maxy surface Is similar to /newmap, except you also specify the maximum y, and the platform will fill from the range 0 maxx 0 maxy 0.

Managing your map

Your map can be edited one of two ways. With the builder, previously discussed above, or the raw text of your map. We strongly recommend you use the builder.

If you wish to use text, you can type

/rawmap`

which will copy the code of your current map to the clipboard, which can be pasted in notepad and edited.

Once you’ve finished editing your map, you can type

/rawdata  paste

Where paste is the pasted contents of the map data that you’ve edited. This will send the map to the server and update you and any other players on that map with the new map.
The builder menu also has options to get and set the map data on your clipboard.

You can change your map by typing /changemap mapname
If you want to change your map to your map and to a certain set of coordinates, type /changemap mapname x y, or /changemap mapname x y z if a 3d map.
You can only change your map to a map created by you or a map you have rights to edit.

If you wish to give another player access to edit your map, or remove a player’s access who has it already, add or remove a contributor from the map settings menu.
If you wish to publish a map in the unofficial menu so that anybody can see it, select the option to make it public from within the map settings menu.
In order for any travelpoint to be able to send a player to your map, the player who activated it either must be a contributor or you must make the map visible from the map settings menu.

If you want to delete a map, type

/delmap mapname

Alternatively you can omit the map name while you are on that map, in which case /delmap will attempt to delete the current map.

If you wish to rename your map, type

/renmap mapname newmapname

Or just

/renmap newmapname

If you are on the map.

/contributions will give you a list of all maps on the server that you can contribute to.

Descriptions of map objects

The coordinate system

The coordinate system is based on a cartesian grid which only supports integer coordinates. In 2d mode, x increases to the right and y increases upward, while in 3d mode x increases to the right, y increases forward and z increases upward.
When anything is asking for coordinates or displaying them, they will be displayed in the order x, y, z, or just x, y if in 2d mode.
Only the vertical coordinate (y or z depending on mode) is allowed to be negative, and only when the map option sub-zero navigation is enabled.
Technically 2d mode is implemented as 3d mode with the y coordinate just ignored, meaning that the vertical coordinate is actually z in both cases, but the notion of x/y has been kept for existing players, and to not confuse people with extra 0s in the middle of everything.
Map objects that can be positioned will ask for either points or ranges.
When asking for a point, the coordinates entered will form the values of a point in space.
When they ask for a range, however, they will ask for the minimum and maximum upon each axis. For example, a zone will ask for the minimum and maximum x, y, and possibly z depending on mode, in that order. These ranges represent the position of the lines of a rectangle or rectangular prism that this object will be represented by in space.
If you wish to think in terms of corners of the rectangle in 2d mode, for example, the bottom left point of the rectangle will be at minx miny, the top left at miny maxy, the bottom right at maxx miny, and the top right at maxx maxy.
If your position on a given axis is in between the minimum and maximum positions of the object along that axis (inclusive), you will be inside the object, otherwise you will not.

Speed values

Some objects will ask for a speed. This speed is given as a period in milliseconds, so lower values will mean faster speeds. There are 1000 milliseconds in a second. If you set a movement speed to 500, for example, the object would make its movement every half second.

Platforms

A platform is a surface in space that always runs perpendicularly to the vertical direction and is only one unit tall. It would be used to represent the ground, the floor, or any other flat surface that you can walk on. The sonar will indicate these with a sort of dloop sound.

Walls

A wall is a block of space that you will bump into but should not be able to pass through when walking. It would be used to represent the walls of a building so that you don’t just walk outside, or may also be used to represent small obstacles that you must jump over, if its height is less than your jump height. The sonar indicates these with a sound that sounds like the word “deep.”

Staircases

A staircase is effectively a platform with a variable height. You can walk onto it and then climb it up or down to go somewhere else. When approaching a staircase, the sonar will indicate it by a sound that rises or falls in pitch depending on whether the staircase continues upward or downward from your position.

Zones

A zone is some text associated with a space. While you are inside this space, your location will be the text of that zone, and when you move from one zone to another the game will report the change in location depending on the zone update setting. This is used to give a description of an area.

Sound sources

A sound source is a sound that will be positioned as you move, so it will get louder and more toward the center as you move nearer to it, and be at full volume and in the very center as you are inside its range. Sound sources have a complete range, so you may use them to create the ambience inside a room that will diminish as you get farther from that room. They may also be built such that they only encompass a single point in space by setting their minimum and maximum bounds to equal values, useful to represent single objects that you can walk past.

Ambiences

An ambience is somewhat like a sound source, except that instead of getting farther away as you go outside its range, it will simply stop sounding altogether. This could be used for room ambiences as well where you don’t wish to hear the ambience of the room through the walls. This game does not yet have the ability to muffle a sound if it is behind a wall.

Excludable sources

An excludable source is effectively a sound source with holes in it. You build the outer range of a sound source as normal, but you also build inner ranges possibly with flags to create gaps where the source will be positioned as if you were outside a version of it with that edge. These are most useful in 3d to create outdoor ambiences around buildings.
To picture the function of an excludable source, imagine two rectangular prisms, one inside the other. The outer prism is the boundary of the source, and the inner prism is an exclusion zone. If one is outside the outer prism, the source is positioned as a normal sound source with the same outer boundary would be. If one is in the space between the inner and outer prisms, the source will be centered and at full volume, as if you were inside the boundaries of a regular source. The interesting part is what happens inside the inner prism. If one is inside the inner prism, the source will be positioned away from them using the faces of the inner prism as boundaries, minus those that are flagged. If one is right at an unflagged face of the inner prism, the source will be fully present as before. But as one moves farther into the inner prism the source will diminish as if one was walking away from it, taking all sides into account such that if one was kind of close to the back face and the right face, for example, one would hear the sound mixed in between the back and the right faces.
The flags are used to exclude a given face of the inner prism from counting as an audible edge. For most cases you will exclude at least the bottom face, otherwise you would hear the source at full volume along the bottom of the inner prism, which would often be the ground.
You can have more than one exclusion zone and they may overlap, to handle the case of a non-rectangular structure. The only forbidden conditions are if one exclusion zone is contained entirely within another, or if there are no exclusion zones defined for a given excludable source.

Excludable ambiences

These are basically ambiences with holes in them, Meaning they will not play if you are outside the outer prism, or if you are inside any inner prism. They do not possess flags because there is no positioning relative to faces of the inner prism. They exist only so that a single ambience may have gaps in it without many disparate ambiences out of synchronization with each other. Again useful for buildings.

Bounded sources

A bounded source is a kind of hybrid between a regular source and an excludable ambience. As before, the initial coordinates are used to position the sound itself. The extra zones, however, are used to define boundaries that this source can be heard within. When one is inside these boundaries the source is played from its initial position, but when one goes outside these boundaries the source pauses like an ambience.
This construct is most useful for objects inside a room, such as a refrigerator, that you don’t want people to be able to hear from other rooms. For such a case you would have the source coordinates be the position of the fridge, and the inclusion zone set to the boundaries of the room.
Like its excludable cousins, the bounded source supports multiple zones separated by ||, so you can define an inclusion zone that isn’t perfectly rectangular. An example would be l-shaped rooms.

About music

Within the sound source and ambience menus, you will find music loops. Music loops behave slightly differently, in that they have their own volume control. If you use sound sources to build music, be aware that they will just sound farther away as you leave their ranges, which may be a problem if you use different music for different environments. It is recommended, therefore, to use ambiences to create music, unless you intend for the music to be coming out of an object, like a radio.

URL variants

Sound sources and ambiences also have URL variants available to be built by paid players, which will take a sound from a given URL rather than from the game’s internal data. This is most useful for http streams, E.G. icecast.
Note that all URL streams have their volume controlled by the music volume control.

Signs

A sign is a piece of text that will indicate its presence via a sound, and that you will have to walk up to and press enter on to read.

Text squares

A text square is essentially a silent sign. It will not be detected by the spyer and does not make a sound as you approach it nor as you activate it. These would be useful as ways of saying something as something else is activated by pressing enter, via putting it at the same location as the other object, or as signs that don’t continuously ding or beep, E.G. NPCs that you can talk to.

Stories

A story is a dialog made up of multiple parts, very useful for segmented storytelling or conversations. When you activate it it will display each line to you one at a time, requiring you press enter to advance, or escape to dismiss the entire story.
A story consists of a single story point and a variable number of story texts. When you place a story point you give it a unique ID that will identify it to you. Then when building story texts, you refer to this ID to associate that text with that story point. The order of display of story texts is dependent on the order of their appearance in the map data, where building new ones with the builder menu will place them at the bottom.

Hazards

A hazard is a block in space that will kill you if you touch it. If you come in contact with any point within the hazard’s space, you will die. The camera indicates a hazard with a special downward whoosh sound, and the sonar indicates a hazard when approaching it by a screeching beep.

Checkpoints

A checkpoint is a marker that will save your position if you step on it. If you die by a hazard or by running out of health and have collected a checkpoint on this map, you will be sent back to it instead of being sent off the map and to your world. A newly obtained checkpoint overwrites any previously obtained checkpoints as the restore position. These make a continuous donk donk sound until you collect them to make you aware of their position.

Conveyer belts

A conveyer belt is a variable height platform that will continuously pull you in a defined direction. It only exerts this pull while you are standing on it, so if you are jumping above it you will be free of it. Depending on the speed of the belt you may be able to run faster in one direction than the speed it pulls you in the opposite direction.

Vanishing platforms

A vanishing platform is a platform that periodically appears and disappears. When it is built it is given an interval, and it will appear and stay for the length of that interval, and then disappear and stay gone for that interval, before starting over again. The sonar will indicate vanishing platforms with a warbling sort of blip.

Doors

A door is an object that will bring you from one point to another. It has a loop on the map, a loop while it is moving you, a sound when it begins moving you and a sound when it finishes moving you. Any of these sounds can be silence. It also has an automatic mode. If the automatic mode is on, simply stepping on the door will activate it, instead of requiring you to press enter. It is represented by a starting point, a finishing point, a speed, the aforementioned sounds, and the automatic mode. If the speed value is 0 it will move you as fast as possible, but this is not absolutely instant, as like any application this game has internal delays due to multitasking operating systems. If the speed value is set to -1, however, it will actually move you instantaneously from one point to another, forgoing the movement loop entirely. Doors are the only object where the speed -1 is valid. When in automatic mode you can think of the door as a teleporter that will activate when you step on it. It can also be used for traps in this manner by having its destination be a hazard.

Passages

A passage is a more realistic representation of a door. On the map it has two endpoints and an intermediate path. When one presses enter on either of these endpoints, the passage will either open or close, depending on its previous state. When it is open, a path is created, cutting through whatever was previously there, while when it is closed this path is not present. Generally you would build a wall in between these endpoints before building the passage, so that the path cuts through the wall.
When building a passage you define the starting point, a length, a direction, an opening delay, the path surface, and the opening and closing sounds. One endpoint will be at this starting point, and the other endpoint will be length+1 units in the direction of the passage. The length value represents the length of the path between the two endpoints, not including them.
You will notice there is no left, backward or down direction. This is because both endpoints of the passage are exactly the same. TO make a passage that goes down, just make the starting point the bottom instead of the top.
Passages may only be built by those with paid status.

Travel points

A travel point is a point in space which will bring you somewhere on another map if you press enter on it. It will also speak a message when transporting you, but this may be interrupted by the zone announcements of the other map. The message is saved in the misc buffer.
There is a special destination in travel points that behaves differently than other destinations. If the travelpoint destination is set to main, it will bring the player to their default world map, even if it is not main. Furthermore, the destination coordinates are ignored in this case.

Ranged travel points

A ranged travel point is, to put it simply, a travel point that can cover more than one square. It has min/max coordinate pairs like many other objects do.
An interesting and requested behavior of a ranged travel point is that your destination is in a way relative to your starting point. In practice, what this means is that when you press enter and are transported, your position will be the destination coordinates of the travel point plus the distance between you and the minimum-most point of the travel point that you activated.
Note when building ranged travel points. There are not separate variants for 2d and 3d destinations. If your destination is a 2d map, just leave the destination y at 0. Also the same main exception for regular travel points applies.

Moving platforms

A moving platform is a platform that moves with a sound that indicates its presence. You would be able to get on them when the indicator is near, and then get off them when they have brought you to your destination which is somewhere else in their path. Note that moving platforms can move at diagonals.
If the hook is usable you may also hook onto a moving platform and ride it from a distance, as it will drag you and your hook along with it in its path of movement.
When building a moving platform you will be asked for a coordinate range, but this is not in fact the range used to build the platform. It is the range of movement. The range used to build the platform is defined by the length and possibly breadth parameters, and will indicate how long the platform is along the x axis, and in 3d also how long the platform is along the y axis. The height is fixed at one unit. The endpoints of the platform’s movement will be derived by the movement ranges and the direction, while the actual behavior of movement will be defined by those and the snap parameter. The snap parameter is used to control the moving platform’s behavior when it reaches one of its endpoints. When the snap parameter is 0 (no snap) the moving platform will simply move back and forth between its endpoints. When the snap parameter is 1 or 2 (move to A and snap to B) the platform will move continuously from one endpoint to the other and then immediately snap back to where it started. When it is 3 (snap at ends) it can almost be mistaken for a vanishing platform, as it will wait at its endpoints and snap between them. If you are standing on it when it does so, however, you will be instantly transported to the other endpoint with it.
As the platform moves, the indicator sound will move along with it, so you can know when it is near. Furthermore it is necessary to note that only the very edges of the platform will touch the given ranges; Only the left edge will touch the minimum x, and only the right edge will touch the maximum x, for instance. If the platform is only 1 long along this axis this doesn’t matter because both edges are that one point, but if it is multiple units long it is important to know.

Moving hazards

Moving hazards are virtually the same as moving platforms except that they move a hazard instead of a platform, and as such also have a defineable height for the hazard. Coming in contact with one of these will kill you, including if it moves up to you while you are stationary. They also do not drag the player along as moving platforms do.
A vanishing hazard can be made by setting the snap parameter to 3 and having one of the endpoints be some distant point that the player will never reach.

Ropes

A rope is a builder shortcut for building a staircase with a given width and a sound source of a swinging rope. These are useful for challenge maps that involve climbing.

Points of interest

A point of interest is a manual marker of something that the player might want to know about. It has a point in space and associated text. When the player goes to track points of interest, they will be presented with this text in a menu and will have the ability to track it, so they may find where it is. These are especially useful in 3d maps where one might otherwise get lost.

Hook altering zone

A hook altering zone is a zone that will change the behavior of the hook depending on its mode. The possible modes are as follows.

Obscurity zones

An obscurity zone is a coordinate range with flags in which certain objects can be marked as effectively invisible. It prevents the spyer and/or the object menu from spotting these objects, and is therefore useful to make hidden doors and passages, or to de-clutter the object menu. It also has the ability to halt or bypass the spyer as hook altering zones do, and halt the camera.


If you wish to contact the admins and developers, write an email to SBYW-admins@ims-productions.com

Enjoy!