You are not logged in.
Yes:
The images I shared here are public domain.
Done ![]()
Hi here it is the exported SVG and also Corel Draw file
https://www.dropbox.com/s/mvt8aaains5k8 … e.zip?dl=0
I draw it again in corel draw and added effects in corel photo paint
https://www.dropbox.com/s/jr0oxex1xv7fq … e.png?dl=0
Amazing drawing ![]()
Good release. Finally playable levels with enemies too. ![]()
Ok, I see. It's a really good idea to have an own server with a big project like this.
No problem ![]()
Good to hear that the community is growing ![]()
If you change your mind, there is a setting in source forge project page, where you can toggle https on easily.
Congratulations for all your achievements.
Thanks for the new version!
In this situation, I began to use a domain from my old site, because it's the best option. All image-hostings that I knew, at some point either stop working, or deleting images. You can registered a domain on any free-platform (for example, UcoZ get 400 MB is free).
Alexandre proposed using GitHub, but I think it is not best thought now.
No, I propossed to use GitHub, and is still the best for now, Microsoft didn't ruined it yet ![]()
Hi, please enable HTTPS into this forum and website. So logins are more secure.
I think if you know how to program, you must read and write some english, else you can't find any help online.
Thanks, but I just found it ![]()
Is really simply to code with it:
- Install node.js https://nodejs.org/es/
Then, open a terminal, and type this:
npm install -g http-server
npm install -g webpack
npm install -g babel-loader
npm install -g babel-core
npm install -g babel-preset-es2015
That does these things:
- http-server is to run a local server, to run the game
- webpack 'compiles' the js into a js that you can distribute online
- babel is a tool to convert modern JS features to an older version, so it can run in any old browser as well, (features like modules for example "import" keyword)
Then you have two commands to develop:
- http-server is to run the game
- webpack is to 'compile' the game into a distributable bundle that you can upload somewhere, like in github pages
That was done by hand not with Emscripten so is easily customizable.
In the readme are the details on how to run it locally. Just install node.js
Hi, I started porting Open Surge to JS, and then I realized with a search that's already done by someone else ![]()
https://github.com/clarkeadg/opensonic-js
You can even play it online
https://clarkeadg.github.io/opensonic-js/
Alexandre wrote:CharlyTx wrote:Although currently I don't know if it's useful, is it possible to have multidimensional arrays? Could be possible to import surgescript libraries to not have to rewrite the same algorithms over again?
Yes, you just write an array of arrays. Like:
matrix = [ [1, 0], [0, 1] ];I tried to work with matrices data like this one:
arr = [[1,8,15,22,29],[2,9,16,23,30]];For example:
Console.print("Hello, world!" + arr[2][3]);but I keep getting errors. I've tried the following formats:
arr[x][y] arr.get(x,y) arr.get(x).get(y)Trying to access only by x gives me null.
What am I doing wrong?
Arrays are 0 based, in your example [2][3] doesn't exist. In your array exists
[0..1][0..4]
Thanks
You're welcome.
Maybe this changes in time, with the new scripting system Alexandre created. Maybe instead of external language files can be all done with his scripting objects?...
SynfigMaster91 wrote:Hi! How is the integration of SurgeSript going?
I'm about to disclosure information about the upcoming Plugin system. You'll be able to extend the language the way you see fit, pretty much the same way modders can extend the game. I'll be using the new Plugin system to build the bridge between Open Surge and SurgeScript.
If you can't wait, I've already published documentation about a new thing called Factory. It's an advanced thing, and an application of the Plugin system. Read more at: https://alemart.github.io/surgescript/t … s/#factory
Also, get in touch with me on GitHub (and YouTube!) to see more.
I'm gonna release new information soon.
Cool ![]()
I like how you organized the units. Few functions in each unit and all strictly related. Like the vector 2d unit.
For now the unit conversion goes well with no major problems.
In the v2d unit however I've coded it in OOP way, but I also keep the functions mapping these to class methods.
Things that can't be done in the same way includes memory swap : a to b and b to a. But when time comes to use that the best will be to "inline" that functions or in other words just copy and paste the swap where it's used.
Memory is handled automatically. I hope JS is fast enough to run it fine.
For the graphics I'm planning on using pixi.js that's hardware accelerated. But I'm too far to that point right now.
For file storage, you can use SourceForge downloads, or GitHub releases.
That's in the plans.
Great.
Yesterday I started the port of Open Surge to HTML5.
https://github.com/lainz/opensurge
I know that can be done automatically with Emscripten, but I want to learn what you coded and how.
I think It will take forever, and I'm not sure if I will finish it. But is a good experience ![]()
Edit: If someone wants to run it (currently test of methods only) need to use a modern browser, since I'm using JS modules. In Firefox it should be enabled changing a setting. In chrome and Edge is enabled by default.
No, I'm not considering interaction between the two systems.
The idea is to let the old system be replaced completely, eventually.
Perhaps a thin layer of compatibility could be added, but I don't want to drag the old system too much. Why do you ask?
My homepage | Rapid brickset editor 2
I computer science.
If this will be a new fresh air... what about using more recent allegro, that's hardware accelerated?
Is like the C# is available in Unity. Events that are fired on game loop and so on.
Really good piece of software you did!
Regarding the game, I would like that users have the ability to just put their scripts on a folder like scripts/ and let the game just work without any issues.
Yes, is the best.
Suppose that you have a single instance of an object, say, SceneManager, and that you need to use it frequently in the game. How would you import it into your script?
What you are saying is a global variable, or static methods, or a mix of both.
With global variable, if the unit is in the imports section, that variable is available for that unit and objects inside.
like
// in scenemanager.ss, somewhere
GlobalSceneManager = spawn(SceneManager);
import 'scenemanager.ss'
GlobalSceneManager.doSomething() //.. call of the global variable, the advantage on this is that the state is stored in the global, and any unit that imports it can access (read, write) the state of this global
With static methods, if the unit is in the imports section, the class methods are available with no need to instantiate them.
import 'scenemanager.ss'
object SceneManager {
hello_string_never_recheable_from_static_methods (variable visible only for an instance)
static hello_static_string (global variable inside a class, visible outside)
static fun doSomething...
}
SceneManager.doSomething() //.. with no need to instantiate
What I know, is that static methods only uses the data inside of them, and also static fields. But they don't have a 'state' of the normal fields.
So you can implement globals or static class methods.
Or something better, like an object that's global
global object SceneManager {
}
it can be instantiated automatically by the engine, or instantiated only the first time by the code
The name of the object is SceneManager, and you call it like SceneManager.doSomething()..