Naaami/tic 80 for game
TITLE: SAVIOR
My game 'SAVIOR'
- The main concept of my game was made by looking at the Situationist Times from perspectives of feminism and media critique in capitalism.
- Storyline: "A peaceful city has been dominated by ads in the swirl of capitalism.
A ball as a residence in the city has to save other ball friends captured in the ads.
To see more elaborated storyline : File:Ball manifesto.pdf
- Basically, I've planned to make two different types of games, then connect them each other.
One type of game is a city dérive game (The main character ball will walk into the street of the city).
The other is ball bouncing game (The main red ball character will save another ball captured in ads.)
TIC-80 function application to the concept
Exporting & Importing sprites
- I wanted to add real advertise images on the simple pixel styles of TIC 80 format.
One thing I enjoyed was exporting an existing sprite of the game, then
I had to resize the original ad images to dimensions such as 16 x 16 px, 32x 32px, etc.
Then it naturally transformed to pixelated images, which was aesthetically very interesting.
--> Manual :
1) Download ad images you want, then resize it to make it to be fitted to the sprites (dimensions such as 16 x 16 px, 32x 32px, etc).
2) Export sprites, then save the sprites in your desktop. Then open it in Adobe Photoshop.
3) There, you copy and paste the pixelated ad images on the sprites.
4) Save it.
5) Go to the TIC-80 again, then type 'add'. Choose the new sprites you've just made.
6) Then type 'import sprites'.
7) Run your TIC-80 game file.
Collision example
- In the ball games, I had to make a collision function, meaning, making some effects when a ball and another ball are hit each other.
SYNC()
- In the city game, I had to put the ball game inside of it, meaning, I had to use the sync() function. SYNC() Copy modified sprites/map to the cartridge
- sync [mask=0] [bank=0] [tocart=false]
The pro version of TIC-80 contains 8 memory banks. To switch between these banks, sync can be used to either load contents from a memory bank to runtime, or save contents from the active runtime to a bank. The function can only be called once per frame.
mask : mask of sections you want to switch: tiles = 1<<0 – 1 sprites = 1<<1 – 2 map = 1<<2 – 4 sfx = 1<<3 – 8 music = 1<<4 – 16 palette = 1<<5 – 32 flags = 1<<6 – 64 0 - will switch all the sections 1 | 2 | 4 - will switch tiles, sprites and map sections, for example bank : memory bank, can be 0…7. toCart : true - save sprites/map/sound from runtime to bank, false - load data from bank to runtime. If you have manipulated the runtime memory (e.g. by using mset), you can reset the active state by calling sync(0,0,false). This resets the whole runtime memory to the contents of bank 0. Note that sync is not used to load code from banks; this is done automatically.