Join us on Discord!
You can help CodeWalrus stay online by donating here.

asciiworld [ucc3]

Started by Yuki, November 18, 2017, 05:44:45 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Yuki

You are an ASCII character, in a grayscale 2D world, made up of other ASCII characters. You don't know what's up, but you can do things. There's no goal either. But it might be considered as a game.

You already can move a letter o around with the arrow keys (block by block in a top down view, of course) and move the camera.



Planned features

- interact with other ASCII characters that may or may not be other people
- build things out of ASCII characters (that shouldn't be people)
- run into ASCII characters that are definitely not Unicode
- everything is a monospaced ASCII character
- Definitely no UTF-8

welcome to asciiworld.
  • Calculators owned: TI-83+ (dead?), Casio Prizm (also dead???)
  • Consoles, mobile devices and vintage computers owned: A lot
Read Zarmina!
YUKI-CHAAAANNNN
In the beginning there was walrii. In the end there will be walrii. All hail our supreme leader :walrii: --Snektron

if you wanna throw money at me and/or CodeWalrus monthly it's here

_iPhoenix_

This could be pretty cool! I like the concept, and you could almost make a rudimentary RPG with this.

I'm interested in seeing what comes out of this project.
  • Calculators owned: Two TI-84+ CE's
Please spam here: https://legend-of-iphoenix.github.io/spam/

"walruses are better than tuxedo chickens, all hail the great :walrii:" ~ me
Evolution of my avatar:

Yuki

Updates!

- World-syncing in the cloud with Google Firebase (thanks @_iPhoenix_ this is definitely going in my web developer's toolbox, this is definitely better than writing some sort of node.js server as I initially planned)
- Your avatar is now one of < ^ > v depending of the direction you're facing
- Get some info about the thing in front of you

Many more features planned!
  • Calculators owned: TI-83+ (dead?), Casio Prizm (also dead???)
  • Consoles, mobile devices and vintage computers owned: A lot
Read Zarmina!
YUKI-CHAAAANNNN
In the beginning there was walrii. In the end there will be walrii. All hail our supreme leader :walrii: --Snektron

if you wanna throw money at me and/or CodeWalrus monthly it's here

Ranman

Pretty nifty Juju.   :thumbsup:

I'm interested in seeing how this turns out.  :)
  • Calculators owned: TI-89 HW1, TI-92+, Casio 9860G Slim, Casio fx6300, Tandy PC7
Ranman
Bringing Randy Glover's Jumpman to the TI-89 calculator. Download available at Ticalc.

_iPhoenix_

I love firebase. It's so easy to use, and frustrating in a rewarding way... (you'll understand when you use it)

It is also very vulnerable. I won't explain how, but I can, uhh, "forcibly take down" old versions of UniChat in < 30ms (assuming my bandwidth is 100% empty).
(But it's not too much of a worry in new versions. Just don't try)

It's really exciting to push something to the database, and watch it appear for the first time.
My reaction: "ooohhhhh" *puts on evil smile* *rubs hands together and stretches*
  • Calculators owned: Two TI-84+ CE's
Please spam here: https://legend-of-iphoenix.github.io/spam/

"walruses are better than tuxedo chickens, all hail the great :walrii:" ~ me
Evolution of my avatar:

Yuki

#5
Have you tried auth functions and database rules? You can prevent a few stuff from happening with that, if you structure your database correctly. In my case, a user can't mess with anyone else's stuff, although they can mess with things marked public.

On that, I'm working on that feature where users can see each other.

EDIT: It works!



This is me (the left >), looking at something, the status bar says it's another player.
  • Calculators owned: TI-83+ (dead?), Casio Prizm (also dead???)
  • Consoles, mobile devices and vintage computers owned: A lot
Read Zarmina!
YUKI-CHAAAANNNN
In the beginning there was walrii. In the end there will be walrii. All hail our supreme leader :walrii: --Snektron

if you wanna throw money at me and/or CodeWalrus monthly it's here

Yuki

#6
More updates:

- Rooms (or more like, different worlds)
- Since only online users appear in the database, your position is saved offline in local storage
- Brand new help box when you press h
- Messing with the dev console (other than editing the Firebase database directly) should mess with mostly nothing but the consistent state of your local copy of the game, as updates from the database have the last say on it
- Command parser (type /help)
- Walls
  • Calculators owned: TI-83+ (dead?), Casio Prizm (also dead???)
  • Consoles, mobile devices and vintage computers owned: A lot
Read Zarmina!
YUKI-CHAAAANNNN
In the beginning there was walrii. In the end there will be walrii. All hail our supreme leader :walrii: --Snektron

if you wanna throw money at me and/or CodeWalrus monthly it's here

Yuki



You can now add blocks you can push around until there's something else! Or a wall!
  • Calculators owned: TI-83+ (dead?), Casio Prizm (also dead???)
  • Consoles, mobile devices and vintage computers owned: A lot
Read Zarmina!
YUKI-CHAAAANNNN
In the beginning there was walrii. In the end there will be walrii. All hail our supreme leader :walrii: --Snektron

if you wanna throw money at me and/or CodeWalrus monthly it's here

Yuki

#8
I'm going to leave this here since I won by default apparently

http://asciiworld.ga/
  • Calculators owned: TI-83+ (dead?), Casio Prizm (also dead???)
  • Consoles, mobile devices and vintage computers owned: A lot
Read Zarmina!
YUKI-CHAAAANNNN
In the beginning there was walrii. In the end there will be walrii. All hail our supreme leader :walrii: --Snektron

if you wanna throw money at me and/or CodeWalrus monthly it's here

xMarminq_

Awesome so far! Could it be possible to push multiple boxes at once, as  when they get really thick you cannot push them and they get stuck. Maybe a pulling mechanic?
  • Calculators owned: Ti-84 Plus CE, Ti-84 Plus (can be borrowed from my school)
I don't associate with associations

mazhat

The concept is really simple, but I really like it.
I hope this won't be blocked on school systems!

It would be cool if you could "name" blocks,
like pressing info on it will display little messages or descriptions.
  • Calculators owned: TI-83Plus, TI-84Plus
  • Consoles, mobile devices and vintage computers owned: Samsung TAB A (Cheap), DSI, Rasperry PI 3
Sketti

_iPhoenix_

I am able to shrink down the size of the database by a ton.


Basically, we have a dictionary where the information for each type of block is stored. In stead of storing data for each individual block, we store it once, and use it many times later.


Here's an example:



We store the data for each type of block in the info branch.


We would want to download this branch to a local variable, because we will be using it a lot.
We also want to have an event listener listening for changes, and it would update the local variable accordingly.


Using some super cheaty methods, I downloaded your entire database and did some simple find and replace actions and got it down to roughly 1/4 of the original size.


When you push an array to firebase, it turns the array indices into keys. This is awesome, because a bunch of 1 or 2 digit keys is much smaller than a bunch of 16 digit keys.


All in all, I got the data down to 1/16 of the original size (not all of the methods were shown in the picture)
  • Calculators owned: Two TI-84+ CE's
Please spam here: https://legend-of-iphoenix.github.io/spam/

"walruses are better than tuxedo chickens, all hail the great :walrii:" ~ me
Evolution of my avatar:

mazhat

Here, Juju.
I made a Codewalrus ad in asciiworld!
  • Calculators owned: TI-83Plus, TI-84Plus
  • Consoles, mobile devices and vintage computers owned: Samsung TAB A (Cheap), DSI, Rasperry PI 3
Sketti

Yuki

Quote from: _iPhoenix_ on January 02, 2018, 08:24:55 PM
I am able to shrink down the size of the database by a ton.


Basically, we have a dictionary where the information for each type of block is stored. In stead of storing data for each individual block, we store it once, and use it many times later.


Here's an example:



We store the data for each type of block in the info branch.


We would want to download this branch to a local variable, because we will be using it a lot.
We also want to have an event listener listening for changes, and it would update the local variable accordingly.


Using some super cheaty methods, I downloaded your entire database and did some simple find and replace actions and got it down to roughly 1/4 of the original size.


When you push an array to firebase, it turns the array indices into keys. This is awesome, because a bunch of 1 or 2 digit keys is much smaller than a bunch of 16 digit keys.


All in all, I got the data down to 1/16 of the original size (not all of the methods were shown in the picture)
That's something I haven't thought of, but that's interesting. My goal was more the ability to customize each block individually, though.
  • Calculators owned: TI-83+ (dead?), Casio Prizm (also dead???)
  • Consoles, mobile devices and vintage computers owned: A lot
Read Zarmina!
YUKI-CHAAAANNNN
In the beginning there was walrii. In the end there will be walrii. All hail our supreme leader :walrii: --Snektron

if you wanna throw money at me and/or CodeWalrus monthly it's here

_iPhoenix_

Well, then you have a default setting, store that to info, and only store the things that have changed from the default. If there are ~10+ of the same changes (and the changes are to more than one attribute), then that is considered a class of blocks and an ID is added for the attributes, stored into info, and the changes stored in each individual block are deleted and the block type is of the ID generated.
  • Calculators owned: Two TI-84+ CE's
Please spam here: https://legend-of-iphoenix.github.io/spam/

"walruses are better than tuxedo chickens, all hail the great :walrii:" ~ me
Evolution of my avatar:

Powered by EzPortal