zzt inspired project with its own language V2 updated

D

Dengar

Guest
unnamed zzt inspired project: VERSION 2 (easier to use)

this project is highly inspired by zzt. Its completely tile based and has its own interpreted programming language along with its own game loop so you can program tiles and then play it.
there is no pre-made game yet, just testing out what can be made. everything you should need is below, so let me kno what you think and how it goes.

The concept: the concept of this project is to have a game with an editor that will allow you to create games using a simple language.
however you wont be able to create stand alone games so this is more level editor than a tru game maker.
there are plans to have an online database that you can upload/download games that other ppl have made.

The genre: The genre would be adventure and/or puzzle.





DOWNLOAD LINK: http://www.mediafire.com/download/7hf7b698u55ija8/Project_zzt_v2.exe
in this demo you have 6 rooms and can draw 120 tiles in each room.
My goal is not to copy zzt but keep that "just draw and type" feeling.
artwork is placeholder but very close to the style thatl be used.

theres probably a lot of information im leaving out but id realy like some feedback on whats been created sofar.
Also id like some suggestions on what commands i should add to make the language better yet still keeping it simple.
an online database where ppl can upload/download games made by other people.
animated tiles
smaller save files (there silly big right now)
more rooms/multiple game worlds
a debug system that will check code for errors
more tiles on the tilesheet (only half the sheet is used right now) not sure what tiles to use

there are a few known bugs.
the 116th tile, im having a weird issue with the 116th tile ghosting once hes been drawn. meaning his image will appear in other rooms.

//controls
left mouse click or drag - creates/selects tiles ( also selects which tile to draw from tile pallet at bottom)
right mouse click destroys/erases tiles

click a tile to select it and just start typing code.
enter button - adds the current line to the codebox
backspace - erases characters

the save button will save the current room to the game file.
the room number buttons change which room is displayed.
the play/edit button changes wether ur in edit mode or play mode.

in edit mode you can also use the arrow keys to move the textbox. its very rough but it works, this allows you to see those long "random" commands.


program commands

name _________ //this is the tiles name and must be the first line of code if used. not all tiles need names.
message ____ _____ //this sends a message to another tile. put the tiles name in first blank, and put the message in the second. example "message boss attack"
sword ________ //put a direction in the blank up down left right. collisions work but no graphics
bullet ____________ //same put a direction to shoot in the blank. collisions down work yet.
move ____________ //same put a direction to try to move. if blocked it'll trigger collisions
random ________ or ________ put separate commands in the blanks and the program will randomly choose one of them to execute. can use upto 4 commands.
score _________ //changes built-in variables (health,score,sword,bullet) put the score variable and the amount to adjust it. example "score score +100" or "score +1 sword"
destroy //this command destroys the current tile
tile _______ //changes what tile is being drawn. put the number of the tile you want to change to in the blank. these are the small purple numbers on the tile pallet at the bottom of screen
print _________ //this prints a message to the bottom of the screen.
alarm __________ //each tile has 1 timer, put the number of game cycles in the blank. game cycles every 30 seconds.
room ______ ____ ____ //this changes the room and moves the selected tile to the new room. put tiles name in first blank, then room number your going to in the second blank, and the door number in the third blank.
door _____ //this command is in the room your moving too and controls where the moved tile will appear at in the new room. put a number in the blank that connects to the room command.

if start //this code will only run once at the beginning of the game
if message ________ //put the message to check for in the blank. runs code if that message is received
if collision ___________ //(put "tile name", "sword", or "any" in blank) runs code if the tile has had a collision with specified tile.
if key _____ //this checked key presses, put a key in the blank to check for, these can be letters or up, down, left, right, for the direction arrows.
if score _____________ // this checks the in-built variables health,score,sword,bullet. use symbols = < > example "if score health > 20"
if alarm //this runs code when the set timer reaches 0.

else //pretty self explanatory

put an empty line after if statements to end them.

^ end of code symbol. these are not needed anymore but can still be used to end a code early.

"directions can be up,down,left,right,tiles_name (tile_name will give you the direction of the named tile) ,or facing (facing is the last arrow key pressed)."

an example of code would be:
//this is a basic movement example
Code:
if key right
move right

if key left
move left

if key up
move up

if key down
move down

//example of slow random npc movement using alarms to create a loop
Code:
if start
alarm 1

if alarm
random move up or move down or move left or move right
alarm 5

Update Notes: ive updated the information on this project.
also the save/load system is a lot smoother and the code is abit simpler suchas you nolonger need to use "end of code" symbols and you don't have to save individual tile code anymore, now you just save the room.

Also, the save data from version1 will not work with version2. but the issues with the save/load system have been fixed.

And finaly if you write a kool piece of code, please share. i want this language to be versatile yet still bound to the type of game it is(2d adventure). so if you figure out something kool or have a suggestion to make it better then please share :)
 
Last edited by a moderator:
  • Like
Reactions: ASR
D

Dengar

Guest
im not sure whats wrong with it. it works fine for me.
so your browser wont load mediafire?
 

alexde5th

Member
im not sure whats wrong with it. it works fine for me.
so your browser wont load mediafire?
It loads mediafire, but everytime I try to download your game, it just opens up a new tab and closes the previous one. Redirecting me to that same page without doing anything else.
 
D

Dengar

Guest
It loads mediafire, but everytime I try to download your game, it just opens up a new tab and closes the previous one. Redirecting me to that same page without doing anything else.
try right clicking the green download button then click "save target as"
see if that works
 

alexde5th

Member
Hey, I finally got a chance to try your game... and about 1-2 minutes of fooling around... I crashed the game by hitting the load button by accident.
Somehow, I don't know how, but if you were to try and load a save file (without there being an actual save file), the game crashes. Instead of pressing "Abort", I kept pressing "Ignore". To the point of it simply freezing.

I checked Taskmanager, and your god damn program was skyrocketing my RAM and taking up half my CPU!
You need to implement a check system so that this doesn't happen.
 
D

Dengar

Guest
yea, the save/load is missing safety checks, sry bout that. ill definatly get it fixed.
any other issues?
 
Last edited by a moderator:
D

Dengar

Guest
New version uploaded. check it out, its a lot easier to use and ive made some nice progress on the engine. ive updated the original post with current information

some new stuff includes:
120 tiles instead of 60
unlimited lines of code for each tile
multiple rooms 6 in total with "room" and "door" commands to navigate thru them.
clickable buttons for saving/loading and such.
code doesn't require "end of code" symbols anymore
you now save entire room instead of having to save each tile individually.


still a lot to come, but i feel this is a lot better demo than version 1.
and as a bonus, the "insert key" on your keyboard lets you import your own tilesheets. tiles are 24x24 This may be removed in favor of animated tiles, but for now enjoy :) and let me kno ur thoughts
 
Last edited by a moderator:
C

ConsolCWBY

Guest
Downloaded clean. Not the most user friendliest of things - but it works! I'll keep playing with it tho - sorry I forgot before! :'( Jam and all... Any plans on external file loads? (I know, I'm a pain!) :D
 
F

FloppyDisk

Guest
It's cool to see ZZT getting some love, hope development continues!
 
D

Dengar

Guest
Downloaded clean. Not the most user friendliest of things - but it works! I'll keep playing with it tho - sorry I forgot before! :'( Jam and all... Any plans on external file loads? (I know, I'm a pain!) :D
thanks for trying it. how can i make it more user friendly? im realy unsure about the layout and controls, so im open to sugestions.
And about external loads. i already have plans on an online database that the game would connect to and you can share games that way. but i suppose i could have a way to load an external game file. the game data is stored in a single string. so it could be as simple as copy and paste i suppose. talk about keeping it simple lol.

It's cool to see ZZT getting some love, hope development continues!
:) thanks. any sugestions on the look and feel?
 
F

FloppyDisk

Guest
I can't really say much about it now, seeing as it's just an early prototype. For some reason though, whenever I press the play button, none of the buttons I press do anything to the player character. Is that supposed to happen?
 
D

Dengar

Guest
I can't really say much about it now, seeing as it's just an early prototype. For some reason though, whenever I press the play button, none of the buttons I press do anything to the player character. Is that supposed to happen?
after you press play, what buttons are you referring to? when in "play mode" the only visible and clickable button should be the "play/edit" button.
 
Last edited by a moderator:
F

FloppyDisk

Guest
Oh, I get it, you actually have to program a character to move using the keys.
ZZT wasn't like that, but it would open up cool new possibilities, such as being able to play as a regular guy, a skeleton, or even a tree!
Interesting, I like it!
 
D

Dengar

Guest
oh. yea unlike zzt in mine you create your player and give him controls. sorry I guess I shouldve mentioned that there is no 'set' player character.
This entire system is based on "draw a tile and then give it code"
but this allows you to set your own movement controls, wether its arrow keys or wasd keys, and also control how he moves. also with the 'tile' command you can change which tile is drawn. so you can start the game as a regular guy and then turn into a skeleton or dragon. so im hoping for lots of fun possibilities.

when you move between rooms using the 'room' function. you identify which tile is moving. so you only have to program your player character once in room 1, then just move him thru the other rooms.

Code:
//movement and attack
name player

if key right
move right

if key left
move left

if key down
move down

if key up
move up

if key z
if score sword >0
sword facing
else
print you don't have a sword
 
Last edited by a moderator:
C

ConsolCWBY

Guest
thanks for trying it. how can i make it more user friendly? im realy unsure about the layout and controls, so im open to sugestions.
It could use a reference screen - you know, giving an overview of commands or controls. Nothing fancy. I've used your project in fullscreen but it's a pain switching over to notepad. Also, I lost some work switching between rooms - I didn't know to save first! lol Just simple stuff like that for people with bad memorization skills like me! ;)
 
Top