Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

The Superpowers game maker #MegaThread!

A topic by Elisée created Nov 30, 2015 Views: 25,418 Replies: 74
Viewing posts 21 to 33 of 33 · Previous page · First page
(+2)


Happy Holidays!

(+1)

That's adorable!

(+1)

I've said it on Twitter but I'll say it again: love it :D Cheers!

hey i was trying this out and i had a question, how do you type or include member variables to the Sup,Actor class?


Such as let healthvar = 100; and somehow access with the

let ActorGuy = new Sup.Actor("Test1")


and giving it that variable and accessing it later with stuff like Test1.healthvar += 1; (in some behavior script in an update function somewhere)


im very confused, also not sure where the main help thread for this software is.... im not used to typescript but trying to learn and I read how you declare objects in ECMA5 or whatever and it said you do

object = {

key: this,

key: that,

key: donelastkeyhere


}


and youd reference them within that way, but im not 100% sure. I'm trying to build a game just using code and C++ is giving me pains so i switched to typescript to see how it'd work and it seems to be similar in pain but without the awful linker issues.

(+1)

Hi! We had setup a subreddit for Superpowers help but it's not very convenient so we're in the process of setting up new forums right here on itch.io community, they'll go live pretty soon :) In the meantime, I can answer your question right here.

So just to give some context, actors are made of a few things:

  • a name ("Test 1" for instance) and potentially a parent actor
  • a transform (position, rotation, scale)
  • a list of components

In order to attach some state and/or logic to an actor, you can use a behavior, which is a type of component (there are other types too, like a sprite renderer to name one).

// First we declare a new behavior class.
// It can be used on any number of actors
class MyCustomBehavior extends Sup.Behavior { health = 100; takeDamage(amount) { this.health -= amount; } } Sup.registerBehavior(MyCustomBehavior); // Then we create an actor let actor = new Sup.Actor("Test 1"); // And we attach an instance of our behavior class to it
actor.addBehavior(MyCustomBehavior);

// Later on, if we want to access the health member variable on the behavior, we can write: Sup.log(actor.getBehavior(MyCustomBehavior).health);

// And we can call methods on the behavior like so: actor.getBehavior(MyCustomBehavior).takeDamage(5);

As you can see, using "someActor.getBehavior" is useful when your global initialization code needs to call methods or access member variables on a particular behavior. It is also useful if you have one behavior that needs to act on another actor's behavior, for instance, when an enemy hits a player, or vice versa.

We should probably add such an example to the documentation at docs.sparklinlabs.com/en/getting-started/variables...

Ok, if I'm understanding this right, to get a behavior it must be printed to superpowers log using Sup.Log(<value retrieved somewhere stored>) which can be an actor so Sup.log(<ActiorName>.getBehavior(<BehaviorName>).<VariableName>); and lets say I wanted to run update tests against this value or another value (like its position overlapping a damaging tile) I would run positional checks in code against the Superpowers Actor class (Sup.Actor which I created as "Test1" for instance) and then in a if conditional


if Sup.log(Sup.log(actor.getBehavior(MyCustomBehavior).CustomX) == Sup.log(Sup.log(EnemyActor?.getBehavior(MyCustomBehavior).CustomX) // Can the engine differentiate collisions and run these functions from each object?

{

let tempVar = Sup.log(actor.getBehavior(MyCustomBehavior).health);

actor.getBehavior().<custom_method>(param0, etc);


//Define method here>>>>>>???


//Or is the method a script that is loaded before this is run or after?

}


sorry for the newbie questions, Ive been learning programming but working with pre-built engine environments is just as confusing to me sometimes but is usually far less work which is why I am trying to learn to use everything I can. For instance game maker/unity work alot like this but still sometime confuses me.

(1 edit)

No, you don't need to use Sup.log! It was an example, to show how to do something concrete after getting a behavior (in this case, Sup.log displays a member variable's value in the browser's development tools, but you could be doing any number of things instead).

If you haven't already, looking at some of the demo projects might help: http://docs.sparklinlabs.com/en/resources/demo-pro... and https://bitbucket.org/sparklinlabs/profile/reposit...

Regarding collisions, there is a built-in axis-aligned bounding box collision system called ArcadePhysics2D. You can find a tutorial here: http://docs.sparklinlabs.com/en/tutorials/collisio...

(+3)

Helloooo!

Things have been a bit quiet with the holidays, but we're back. There is code to write, trailers to make and bugs to fix!

Superpowers LÖVE

I've been writing some documentation for systems and plugins development and I realized we should make sure that things aren't going to change too much once we start supporting other engines.

So I spent some time building a basic LÖVE system for Superpowers. What is LÖVE? 🎵It is a sweet 2D Lua game framework. Its 0.10 release was just announced with mobile support!

I reused the media importer I wrote for Superpowers Web earlier this month and turned the Jade editor into a Lua editor. Pretty straightforward! The main challenge was getting the games to run. I added a button on first run to ask where the LÖVE executable is located:


Once LÖVE has been found, the system's runtime simply downloads all the assets, puts them in a temporary folder and points LÖVE to it. Here's a GIF showing a tutorial game I found online and manually imported into Superpowers:


Pretty cool? :) We've put the source code for the Superpowers LÖVE system on GitHub right away. Enjoy!

(2 edits) (+4)

36 hours from Open Source

Hey y'all! Just a quick word to remind you we're just over a day away from Superpowers's first open source release!!

Alright, back to work! See you VERY soon

(+4)

Can you believe it? Today's the day!

Holy moly. It's happening in less than 10 hours!

Superpowers goes open source at noon PST / 3pm EST

We'll be live at hitbox.tv/SparklinLabs to press the big red button, demo it all, launch our Patreon, talk about contributing and future plans. We'll be speaking in French but we'll have slides in English and we've got some people on call to translate it all for you in the chat.

See you then! Can't. wait. ♥

(+1)

I am trying Superpowsers, but I haven't found any documentation on how to build/run the desktop app. I have Electron installed but I don't know what I need to do to run Superpowers with Electron.

I really like it so far, and I hope I will be able to contribute (even though I have no experience with TypeScript, but this is the perfect occasion to learn :P)

Ah right, we need to add this to the documentation. Try this:

# Run this one just once
npm install -g electron-prebuilt

# Then, assuming you're already in the superpowers root folder
cd launcher
electron .
That should start the launcher!
(+1)

Yup it works ! Thanks :)

(2 edits) (+1)

Did you steal my gif?

(+1)

No I made this.

Hey! Question, How do people join my server so they can help edit our game?

(1 edit)

Hey! See Letting others join your server in the docs: http://docs.superpowers-html5.com/en/getting-start...

v0.19.0 — A week of Open Source

Phew! That was another long day. It's been just under a week since Superpowers was open sourced and it's been busy as hell.

Here's Superpowers v0.19.0! Check out the release notes: https://github.com/superpowers/superpowers/releases/tag/v0.19.0

Is there any way I can share my server without usuing the ip? can't we use hamachi or something?

I suppose Hamachi should work, I haven't tested it!

oh, ok! thanks for replying!

Just didn't want to to reveal my location to my friend, I don't trust them THAT much.

(1 edit)

What happened this week?

Since we're hosting a weekly livestream in French, we thought it'd make sense to have something for the English community too.

Doing a second livestream in English would take a lot of time and effort so instead,
we've just kicked off a weekly community report on our new wiki!
Check it out, it's called: This Week in Superpowers #1!

Lots of games and contributions being made :)

(1 edit) (+2)

Hey! I haven't posted here in a little while!

Make sure to check out This Week in Superpowers #2 and This Week in Superpowers #3 for the latest development and community news. Loooots of stuff has happened.


Last week end, we took part in the Global Game Jam and made Lumberjack Jacques and the Ritual of Doom.

Also, we've posted our first Secret Supporter Update on Patreon, featuring a sneak peek at our next game! :D

Project Sustainability

It's been a year and a half since the three of us started working on Superpowers. Thanks to generous support from the community on Patreon and during early access on Gumroad, we've been able to do it full-time so far. But with our current financial situation, we can't afford to keep going like that for much longer.

So we've been looking for work on the side, in order to continue this awesome beast of a project... and, well, good news! Bilou and I have found long-term gigs and Pixel-boy will be doing some contract work soon.

What does that mean? Well, we'll definitely have less time to spend on Superpowers every week. Buuuuut! now we don't have to worry so much about making rent every month, and it's remote work with a pretty flexible schedule so, short of being paid to work on Superpowers itself full-time, it's the best outcome we could hope for!

More Open Source work!

We'll do our very best to keep earning your support by releasing more cool open source stuff! On top of our ongoing work on Superpowers, we're recently open sourced, migrated to GitHub and/or improved:

When's the next release?

Check out the latest edition of This Week in Superpowers for info about the next release and why we haven't pushed out a v0.20 yet.

Talk to you soon! ♥

I usually consider myself a developer (despite that I'm not in high school yet), even though I don't know much about any other coding languages beside simple Visual Basic (VB) and HyperText Markup Language (HTML). When I go onto YouTube or any other website to find documentation or tutorials, I see a big gap between beginners and experts. The tutorials either assume you know advanced coding or none at all, which annoys me. I also don't have the money for a tutor or website membership. I have noticed that Superpowers has been released for free now, and I am "intrigued" by this program. It does look great in terms of GUI, and it looks really simple in that screenshot. I just downloaded Superpowers for Windows from right here on itch.io, but I'm stuck at the setup process. I went to the Setting up Superpowers documentation, and it said to "make sure to also edit the address of the "My Server" entry in the servers list to use the correct port (Syntax is ip:port)". When I put in my IP, it stopped working. It kept sending that connection timed out error. Is there any way to fix this?

You should leave the default server address:

127.0.0.1:4237

The main launcher is being redesigned and the new version will be simpler to use.

(1 edit)

Thanks, but it still doesn't work. It almost immediately connection refused.

Ok, a couple things to check
  • Did you change the port in the settings tab? Make sure it says 4237 for the main port, and 4238 for build port.
  • Make sure the server starts? Did you uncheck auto-start? Any error listed at the bottom of the window?

Got it! Thanks a lot.

I didn't know this before, but clicking "start" and double-clicking the name do not have the same function as I thought (hey, I'm new to this).

(2 edits) (+3)

Hey! We have released Superpowers v1.0 with many new features and improvements — https://www.patreon.com/posts/superpowers-v1-0-614...

Cheers!

Hello itchies! I'm a starter with Superpowers, and i'd just like some technical help. Using the 2D platformer that comes with the program, and using that as a starting point to my first game, i have one problem. Whenever i start the game it just shows a black screen.

Now! I have a scene set up! I have that scene set up at the starting scene through the settings, and i have the cameras set up in the scene, I even have it directly attached to the player, however the sprites and the tile map are still not showing on the startup, if it's even being started up. Can someone help me?

Hi!

Go to 3D view and double-check the depth of the various actors. Make sure the camera's viewport contains the sprites on the Z axis. That's probably the issue.

Viewing posts 21 to 33 of 33 · Previous page · First page