Skip to main content


Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - mezzoEmrys

Sphere was also my first experience as a young lad, and it was fairly easy to pick up and get something workable going from the tutorials at the time, then work on manipulating it myself.
Javascript also lets you work with a bunch of powerful features as you're ready for them, and just work in simple imperative code while you're starting out.
Engine Development / Re: minisphere 3.3.0
Customized settings like "not using fullscreen by default" or setting window size to scaled 800 by 600, etc.

Additionally, where are the saves for packaged games located (both on windows and linux)?
Engine Development / Re: minisphere 3.3.0
Quick question, having built an SPK, how do I package the game to be executed as a standalone project, with customized settings, etc.?
Alright, I guess I'll just make my own reverse-enumeration function for now and call it good. Glad to know this kind of thing  won't be as much of a problem in Sphere 2.0 ;)
So, as part of my current project, I'm trying to handle my input for layered menus and such from the ground up for the sake of experimentation. As such, I have this code currently:

Code: [Select]

if(AreKeysLeft()) {
   ({ KEY_UP: startWindow.handleUp,
      KEY_DOWN: startWindow.handleDown,
      KEY_LEFT: startWindow.handleLeft,
      KEY_RIGHT: startWindow.handleRight,
      KEY_Z: startWindow.handleAccept,
      KEY_X: startWindow.handleCancel

Now, this code does not currently work because the [GetKey()] step returns undefined, which is because KEY_UP, DOWN, etc. are actually numerical constants, and I can't seem to break them down within the object creation to do something like convert KEY_UP to 84, nor can I seem to get the value from GetKey() as its word form. I'm a bit stumped as to what to do here that would still result in legible code while also having equivalent functionality.

Windows 6.1.7601, what is that, Vista?

Nope, just bog standard Windows 7 Professional Service Pack 1. In fact, even windows 8 is only 6.2, and 8.1 is 6.3.

Found a slightly different bug, sometimes on encountering an error which points to a line number, it seems like SSJ doesn't inform the editor to stop highlighting the line in red, so after a while of writing and debugging, I have to reload the file to get rid of the 4 red lines I can't manually remove.
I don't know if this is a known bug, but I had accidentally typed two parenthesis at the start of a function as
Code: [Select]
CreateColor((255, 255, 255);

And after starting up minisphere and informing me of a parse error, Sphere Studio crashed.

Code: [Select]
Problem Event Name:	CLR20r3
  Problem Signature 01: Sphere Studio.exe
  Problem Signature 02:
  Problem Signature 03: 574db54c
  Problem Signature 04: Anonymously Hosted DynamicMethods Assembly
  Problem Signature 05:
  Problem Signature 06: 0
  Problem Signature 07: 0
  Problem Signature 08: ffffffff
  Problem Signature 09: QCQUMZNLVZFTVMBQQ2DV1TYSC5H01EH3
  OS Version: 6.1.7601.
  Locale ID: 1033
  Additional Information 1: 6198
  Additional Information 2: 6198e9636daaf1a3eec7a0f2bce0d363
  Additional Information 3: c60f
  Additional Information 4: c60f3d47aa79c2d74c76cad6601c23cf

Engine Development / Re: minisphere 3.3.0
Just glancing at the Person functions in the API on the wiki, I see a lot of potential for going either way. For the function "GetObstructingPerson", for instance, it could make sense for that to belong to the Person, in which case we'd have the Person go to the Map to find that information. If we put it in the Map, though, we end up keeping roughly the same signature for the function, where we have to pass the person we're asking about in.

I'd say that if you put functionality in Person for interacting with other Persons, Person would need the Map reference. However, the only Person-Person interaction seems to be obstruction and talking,  and obstruction also has tile obstruction. Unless you're planning to add more Person-Person interactions, it seems like just having Persons carry their own internal data and be added to the map they're on.
I believe I've encountered it here on Windows 7, made it quick and easy to calibrate and figure out buttons on my usb gamecube and n64 controllers.

Yup, Control Panel > Devices and Printers > Right click on a game controller > Game Controller Settings
Use properties to view the inputs, do calibration, etc.

I'll have to check if it's in Win10 tomorrow.
When I downloaded it, it came with a builtin Chromium debugger, for playtesting the game. Once you "export" your game, it doesn't have any of the debug features, obviously.

The style to extend builtin methods reminded me of the script that Radnen, I think, made to improve efficiency of getPersonList(), where you replace a set of functions with wrapper functions to those functions. I actually threw together a plugin that modifies the default combat system with a more final fantasy-esque one, which is something I've been real excited to do once they shifted to javascript. I could have done it in ruby, but I didn't want to have to learn a whole language for that.

The editor doesn't actually have a way to edit js in it, and instead gives you a link to the folder where everything is kept. The editor really only gives you a decent GUI for the plethora of JSON files that make up the game's data, including the maps and their events. It also comes with an extremely decent character sprite maker, which you can use to throw together any number of characters. The biggest flaw of the sprite maker is that it doesn't have a huge number of options for each thing, but the community's already working on fixing that.

Being able to grep my way through the source code to find whatever I want to modify is still probably my favorite thing, and if I wanted to, I could totally edit the source code itself instead of using a plugin to encapsulate a group of changes. All it really needs now is decent documentation for all the source code, so I don't have to grep for words and names of things that sound like what I want to change :P
Off-Topic Discussions / Re: Anyone here play Undertale?
To quote one of my favorite streamers, "Go play this game. Stop whatever you're doing and play this game. Stop watching my stream and go play Undertale right now." It's the kind of thing that's been rated up with the likes of Final Fantasy 6, Portal, and Cave Story.

You have the option to kill every enemy you encounter, but you also have the option to save them. It's a relatively short play, but you'll want to play through it multiple times to get the whole story. You can also befriend many of the bosses after their battles, which gives you even more story.
Engine Development / Re: minisphere 1.2.3

The layer bug could have been fixed earlier if you had filed a bug, I would say.

To be honest, I didn't realize it was a bug at first, I thought it seemed intuitive enough that it did that. Didn't even think to check it on 1.5, since I was writing a game from scratch targeted at minisphere anyway. It wasn't until I saw your issue that I thought to check it.
Engine Development / Re: minisphere 1.2.3
Lots of fairly important bugs fixed, too, especially (for my current project) the hidden layer for obstructions one. I had just settled for fully transparent tiles, now i can actually make them visible in the editor :D
Seems that I can't log in with Google OpenID, since google has phased out OpenID 2.0
Maybe it has to do with something along the lines that normally moving "diagonally" would cause you to move faster than the game physics intends you to? That's my first guess.