June 16, 2024
Main Realm page.
What is Realm?
Screenshots of realm and other projects.
Realm Related Screenshots
All programs below were written in Java using Sun's JDK.
Realmlands - AI research project
  (12-??-2001) You can download Realmlands here
isotest - isometric graphics test
  (1-8-2000) isotest is a program I wrote this weekend to research isometric graphics.I'm am very excited of the results. Updated(1-11-2000) added entities. Draws entities using z-order to determine the order of images to be drawn.
SpriteView - sprite test
  SpriteView is my latest research experiment (12-11-1999) with movement in Java.I have always loved Nintendo games like Final Fantasy, Dragon Warrior, Legend of Zelda, etc..During the course of research and development for Realm, the graphics scheme has evolved greatly. At first the graphics were going to be all text based. The main character was going to be a '@'. I found out the it was just as easy to move a gif file around the screen as it would have been to move the '@'. That is what I recall as the first big step in development.I am currently researching using sprite movement for Realm. This is the result of that research. I will use some of what I learned with this in Realm, including frame rates and certain input handling routines. The movement of this demo is not completely fluid, Link slides a little, that is due to the step size being set to 2 pixels instead of 3 or more. That was not the point of my experiment, so I didn't fix that. This demo was also a networking test for sprite movement. The two players can see eachother's movement. Once one player connects to the other, movement info gets sent between the two players. There is no actual game, or goal to the demo. All you can do is walk around. It uses TCP packets to communicate.
ColorTest - texture editor
  ColorTest is an offspring of my anger in finding a paint program that would accommodate my need for creating textures to use in Realm. The main concern for me was that I would use a color, then forget what color I used. Most programs have you pick from a color spectrum with 16,000 colors. Since gifs only allow up to 256 colors, I wanted a quick and easy way to pick colors with out having to use an "eyedropper" to pick the same color I used in another image. This way I can just click one tile on the screen to change the color. The current graphics scheme uses 15 x 15 pixel tiles. (gif images) Java supports the viewing of gif and jpg images, but not writing them to disk. I ended up looking up different graphics file formats. I found BMP's to be the easiest to implement. In a "lock myself in a room" weekend I created ColorTest. Currently it can only create and save images. It can not re-open and edit existing images. This is not really a problem since I run the images through Paintshop Pro or The Gimp to convert them to gifs before I use them. If need be, I can edit them during that process.
Realm (old) - first Realm concept app
  This was the first real version that can be dubbed "Realm". There were initial experiments before this one, including the '@' to gif version. This app qualifies as a true version since it allows the use of an unlimited number of maps. The previous versions had a map hardcoded into them. This one actually loads a map from disk. It has the map name hardcoded though.(web_test1.rlm I think) More maps can be made using RealmEd. This version uses jpgs instead of gifs for the background textures. The code design is very embarassing in hindsight. The newest version is much more solid than this one. But it's still darn neat. The screen shot shows the first actual room created for Realm. This version is networked using a combination of TCP and UDP packets.
RealmEd - map editor for old Realm
  This version of RealmEd can be used to create maps for the old version of Realm. The maps(.rlm) are simple text files. The original design used seperate files for every room. This was pretty annoying for large maps. You could have as much as 100 files for one map. The format used in this version uses one file to represent the map. This was another one weekend project. I used Edit in MS-DOS to create the first test maps. You use the 'tab' key to move from the world map to the room map, and the number keys to place the few textures that exist for this version. There are a few misc textures the use other keys to place them.W for water I think, and B for a bridge maybe. I think you press 's' to save the current room to memory before you switch to another room on the map. I'm not 100% sure about how it works anymore.
RealmTools - map/quest editor for Realm
  This is the current (12-11-1999) version of RealmTools. It supports a map of up to 900 rooms. This should allow a good size quest to be created. It currently allows use of up to 256 differnt textures, and 256 icons. Icons are just images to be put on top of the other textures. An example would be a treasure chest or whatever. The only reason for the limit is that it takes a great deal of memory to display all the textures in the editor. There is support for creating scripts, random encouters per map, script placement, blocking movement, starting location, and quest information, and probably some other things. There will be a great deal of work on the editor beore Realm is done. I'm not sure what changes will need to be made at this time. I'll figure that out when I get further in development.
Realm - newest incarnation of Realm
  Well, this is the newest version. It it also networked. It uses UDP packets only. I will probably go back to using TCP packets only. There is not that much actual data being transfered between clients. UDP is good because the packets are smaller than TCP, but it's unreliable. It would be easier to just use TCP instead of creating an error checking scheme for UDP. There would be no gain for realm to use UDP. Well now that the lecture is over with... This version allows you to create a character save it and start a quest. It supports an unlimited number of characters and quests.
Recent Development Progress
Last Updated 3/11/2000 at 12:43:58 EST - 5:00 GMT
  • Create Entity System.
  • Create Event System.
  • Create Object System.
Recent things:
  • Created fast update cgi
  • Switched back to using JDK1.1.7_v3 for linux.
spriteview1.0.tar (~40k)
colortest1.0.tar (~105k)
Copyright 1999, 2000, David Koenig