Skip to main content

News

Recent Posts

1
Libraries / Re: EventEmitter for miniSphere
Last post by Eggbertx -
I actually got the idea while working on my IRC client module to simplify handling IRC events, and figured it could be applied to many other projects. I created a GitHub repo for it and added a link to the OP.
2
Libraries / Re: EventEmitter for miniSphere
Last post by Radnen -
I like this idea, it's great on turn based tactic style games, and other event driven behaviors.
3
Libraries / EventEmitter for miniSphere
Last post by Eggbertx -
I'm working on a relatively simple (but hopefully useful) event system for miniSphere influenced by Node.js's EventEmitter class, so if you're familiar with that, this should be fairly simple to get used to.

Some examples:
Code: (JavaScript) [Select]
import { Thread } from 'sphere-runtime';
import { EventEmitter } from 'events';

const maxListeners = 32;
const escOnlyOnce = true;
let ei = new EventEmitter(maxListeners);

export default class Game extends Thread {
    constructor() {
        super();
        ei.addListener("escEvent", () => {
            Sphere.shutDown();
        }, escOnlyOnce);
    }

    on_update() {
        if(kb.isPressed(Key.Escape)) ei.emit("escEvent");
     }  
}

The `event#addListener` function also takes an optional parameter that emits the listener when it equals true or is a function that returns true.
Code: (JavaScript) [Select]
ei.addListener("escEvent", Sphere.shutDown, escOnlyOnce, () => {
    return kb.isPressed(Key.Escape);
});

I'm also working on a class for handling key press/release events

GitHub repo: https://github.com/eggbertx/eventemitter-sphere
4
Engine Development / Re: Tileset won't update...
Last post by Radnen -
Since it's minisphere; it's likely an issue with Cell, the game 'compiler' system, which is supposed to compile your assets into a distribution folder for release. In this case the 'dist' folder has an outdated tileset.
5
Engine Development / Tileset won't update...
Last post by Defiant -
So I'm trying to make the change from the old sphere to miniSphere, but I'm old, I hate change and somethings frustrate me to the ends of the earth.

Anyways, I think it's a bug, I'm using miniSphere 5.3, and working off a blank tileset and editing it as I go. I frequently load up the game to see how things look and try to see proportions of the surroundings. The problem is that in the editor it updated to the newest iteration, but when i test the game it defaults to an old version. I've tried closing the map, and the project itself.

The top part is cropped from the editor, while the part below is being ran from the engine.

Is there something I'm missing?
6
Engine Development / Re: Oozaru: Sphere for the Web
Last post by DaVince -
Hey! I haven't been around for a while but this is looking mighty impressive so far, good job! :))
7
This sounds pretty much like the first few text-based games I ever wrote in QBasic.  Variables?  Functions?  What are they?  It was pretty much just a long string of IF..THEN and GOTO for each relevant input :P

Of course mine weren't roguelikes.  To code a whole roguelike like that... that's impressive.
8
twitter.com/The_Doddler/status/1137483351248388096?s=19
twitter.com/The_Doddler/status/1137495814908010496?s=19

Quote
    I saw that the source code for Elona, a fun japanese roguelike was available online and decided to take a look. It turns out it is a single, 14mb text file with 444000 lines of code, completely devoid of comments, written in 'Hot Soup Processor', a japanese basic like language.

Quote
    The code that determines what monsters can spawn is 30000 lines of this (7% of the total game code), which checks for every monster, where if it fails it goto's the next monster, for all 1000 monsters in the game.

Screenshots of the game can be found here:
http://ylvania.org/en/elona

I loved the tile draw code: https://puu.sh/DDswu/2bcf03f2eb.txt
So unlike Sphere. My respects to even get it to work.
9
Engine Development / Re: Oozaru: Sphere for the Web
Last post by Fat Cerberus -
The first proof of concept of Oozaru is up (running the Spectacles battle engine), check it out:


Consider this Alpha 1.  I won't call it a beta, since it's not quite feature-complete yet; sizeable portions of the Sphere v2 API are completely missing and/or inoperable.  Like, the Joystick class exists, but all methods are no-ops.  And almost the entire FS API is missing... that kind of thing.
10
Programming / Re: So I wrote a monad tutorial...
Last post by Radnen -
@FatCerberus: I think you just nailed it with that post, bud. :) That's indeed the simplest explanation yet. I was looking for a simple overview, like an "all-together", and what you just wrote, is it.