Author Topic: Yet Another Danmakufu Clone in the Making...  (Read 13382 times)

Blargel

  • RAWR!
  • I'M AN ANGRY LOLI!
Yet Another Danmakufu Clone in the Making...
« on: October 26, 2009, 11:57:36 AM »
So in the dead of night, my brother and I decided to test the limits of Danmakufu. We discovered that... it sucks.
1.) Re-assigning elements in multi-dimensional arrays is a pain.
2.) It's slow as hell.
3.) No hashes!?
4.) Random unexplainable glitches and crashes.
5.) And the list goes on...

And then my brother (who happens to be a professional programmer with game programming experience) and I got the bright idea of trying to build our own Danmakufu-ish, create-your-own-shmup engine. No name yet, but we have decided this:
1.) Main program will be built in C++
2.) The scripting language will be Javascript (ECMA-262, edition 3)
3.) We are going to use Orx as the hardware accelerated 2-D graphics engine using OpenGL.
4.) Javascript binding with the help of Flusspferd
5.) 100% open source on github
6.) Cross platform. It'll work on Windows, OS X, and Linux

Yes I realize there is a 10 page long topic by Nuclear Cheese, but we already decided this before we saw that. :P
It doesn't matter too much anyway since Nuclear Cheese seems to be seeking to imitate and improve upon Danmakufu while we will be making something more catered to experienced scripters who want more freedom and flexibility.

As a side note, I got interested in this because of my failed Ikareimu library construction... seriously... Danmakufu really needs a more powerful scripting language at least.
« Last Edit: October 26, 2009, 12:05:41 PM by Blargel »
<WorkingKeine> when i get home i just go to the ps3 and beat people up in blazblue with a loli
<Azure> Keine: Danmakufu helper by day, violent loli by night.

Cabble

  • Ask me about my Cat.
  • Not unwilling to shank you.
Re: Yet Another Danmakufu Clone in the Making...
« Reply #1 on: October 26, 2009, 01:05:59 PM »
I would like at least one of you to make a phantasmagoria engine

(:V)
I had a teacher who used to play radiohead during class once.

ONCE.

Helepolis

  • Charisma!
  • *
  • O-ojousama!?
Re: Yet Another Danmakufu Clone in the Making...
« Reply #2 on: October 26, 2009, 04:43:59 PM »
Who is we:

Sounds like more persons are involved in this.

Stuffman

  • *
  • We're having a ball!
Re: Yet Another Danmakufu Clone in the Making...
« Reply #3 on: October 26, 2009, 05:24:23 PM »
Haha, so now we have two being made? Well, let's see who produces the better program :D

Although, Nukecheese likely has a significant headstart!

Javascript sounds like an interesting alternative for coding, I think I'll prefer the C-style scripting in Musuu though.

Blargel

  • RAWR!
  • I'M AN ANGRY LOLI!
Re: Yet Another Danmakufu Clone in the Making...
« Reply #4 on: October 26, 2009, 05:33:06 PM »
I would like at least one of you to make a phantasmagoria engine
Phantasmagoria engine? As in Phantasmagoria of Flower View? You wanna make your own characters for it or something? Well too bad! >:(

We = My brother and I. And any other programmer who's interested to take the source and do their own thing with it.

And really, the two programs are probably going to be too different to compare, judging from how my brother is organizing everything.
<WorkingKeine> when i get home i just go to the ps3 and beat people up in blazblue with a loli
<Azure> Keine: Danmakufu helper by day, violent loli by night.

Stuffman

  • *
  • We're having a ball!
Re: Yet Another Danmakufu Clone in the Making...
« Reply #5 on: October 26, 2009, 05:35:00 PM »
Cheese's program is aimed at being a straight upgrade to Danmakufu, i.e. specifically for touhou. Is your program going to be more a universal shmup maker? That's what it sounded a bit like from your description.

Blargel

  • RAWR!
  • I'M AN ANGRY LOLI!
Re: Yet Another Danmakufu Clone in the Making...
« Reply #6 on: October 26, 2009, 05:48:35 PM »
That was my brother's goal, though I just wanted something Touhou specific. He wanted the thing to be loose enough so that all the things that could possibly be needed for any type of shmup could be created and easily implemented. People could also write and share libraries (on github?) so that in the future, there's a lot of things that you could just pull from online and it would be ready to use. Something like a plugin system where the plugins are made and shared by the users themselves.

Doesn't sound too bad like that I suppose, but it'll take a while before those libraries actually get created. As we develop this program, I'll likely be writing a library that will imitate Danmakufu's built in functions so that it's not as painful to switch from Danmakufu or Cheese's engine to ours..
<WorkingKeine> when i get home i just go to the ps3 and beat people up in blazblue with a loli
<Azure> Keine: Danmakufu helper by day, violent loli by night.

Helepolis

  • Charisma!
  • *
  • O-ojousama!?
Re: Yet Another Danmakufu Clone in the Making...
« Reply #7 on: October 26, 2009, 06:26:51 PM »
Anything I would say regarding Musuu and your own shmup engine would be biased now. I guess we can only judge when we see material from you. So yea. Good luck.

Re: Yet Another Danmakufu Clone in the Making...
« Reply #8 on: October 26, 2009, 11:27:36 PM »
Hmm, interesting.

Whelp, most of my sentiments have already been said by others, so yeah. Good luck!

Lawence Codye

  • The Nine Tails of Subconscious...
  • Come & your desires shall all become reality...
Re: Yet Another Danmakufu Clone in the Making...
« Reply #9 on: October 27, 2009, 01:38:03 AM »
I'm usually late giving anyone useful suggestions & such...mainly cause others beat me to the punch.  But umm...yeah, look forward to the day this is finished...
I am the Nine Tails of Subconscious...

Come & your greatest desires will be reality...

Nuclear Cheese

  • Relax and enjoy the danmaku.
    • My homepage
Re: Yet Another Danmakufu Clone in the Making...
« Reply #10 on: October 27, 2009, 02:07:40 AM »
Of course you realize, this means war. >:(



... not really.
It'll be interesting to see how the two evolve, relative to each other.



Cheese's program is aimed at being a straight upgrade to Danmakufu, i.e. specifically for touhou. Is your program going to be more a universal shmup maker? That's what it sounded a bit like from your description.

Well, not really.  That's where it's starting, but right from the get-go there has been talk of making it able to do more than just Danmakufu - customizable power systems, horizontal mode, etc.

But I guess it's accurate in that it's going to be an improved Danmakufu first and foremost ...
to quote Naut:
"I can see the background, there are too many safespots."
:V

Re: Yet Another Danmakufu Clone in the Making...
« Reply #11 on: October 27, 2009, 02:44:28 AM »
How exciting!

Re: Yet Another Danmakufu Clone in the Making...
« Reply #12 on: October 27, 2009, 03:58:32 AM »
Heh.. Not to be a suck up or anything, but good luck topping Nuclear Cheese  :V

Re: Yet Another Danmakufu Clone in the Making...
« Reply #13 on: October 27, 2009, 04:16:18 AM »
Omg it's Blargel! :V

Blargel

  • RAWR!
  • I'M AN ANGRY LOLI!
Re: Yet Another Danmakufu Clone in the Making...
« Reply #14 on: October 27, 2009, 05:54:41 AM »
Of course you realize, this means war. >:(

I CHALLENGE YOU TO A DUEL! >:(
But yeah, should be interesting to see how everything develops.

Heh.. Not to be a suck up or anything, but good luck topping Nuclear Cheese  :V

Though I wouldn't be this confident if I were working solo, the fact that my brother is working with me lets me say that we will definitely at least match Nuclear Cheese. I did rip off a few scripting techniques from him by looking through his code when I was first starting off in Danmakufu though, so I have a lot of respect for him. :P

Omg it's Blargel! :V
Where!?


EDIT: Yay, avatar!

EDIT2: Okay, so my brother wrote up some stuff that's supposed to be how this program is going to use Javascript. If you're used to Danmakufu and inexperienced in Javascript, a quick look at this will probably make you go "wtf" ('cause that was my first reaction), but if you actually try to understand it... well the first thing you'll notice is that it's going to be pretty different from how Danamkufu handles things. The second thing you'll notice is that the first thing being addressed is actually putting a game together with stages. This is by no means a complete and concrete idea and is likely to change as we start adding in all the key features for making a shmup.
http://gist.github.com/219345
« Last Edit: October 27, 2009, 06:30:21 AM by Blargel »
<WorkingKeine> when i get home i just go to the ps3 and beat people up in blazblue with a loli
<Azure> Keine: Danmakufu helper by day, violent loli by night.

Nuclear Cheese

  • Relax and enjoy the danmaku.
    • My homepage
Re: Yet Another Danmakufu Clone in the Making...
« Reply #15 on: October 28, 2009, 02:03:51 AM »
Heh.. Not to be a suck up or anything, but good luck topping Nuclear Cheese  :V

Dammit Lishy who's side are you on!



I CHALLENGE YOU TO A DUEL! >:(

You and what army? >:(
Wait ... doesn't 'duel' mean one-on-one?  You cheater, using your brother to help!



But yeah, should be interesting to see how everything develops.

Though I wouldn't be this confident if I were working solo, the fact that my brother is working with me lets me say that we will definitely at least match Nuclear Cheese.

Not to be an arrogant jackass, but you two have quite a lot to match up to >:D



I did rip off a few scripting techniques from him by looking through his code when I was first starting off in Danmakufu though, so I have a lot of respect for him. :P

Yay respect! :D



EDIT2: Okay, so my brother wrote up some stuff that's supposed to be how this program is going to use Javascript. If you're used to Danmakufu and inexperienced in Javascript, a quick look at this will probably make you go "wtf" ('cause that was my first reaction), but if you actually try to understand it... well the first thing you'll notice is that it's going to be pretty different from how Danamkufu handles things. The second thing you'll notice is that the first thing being addressed is actually putting a game together with stages. This is by no means a complete and concrete idea and is likely to change as we start adding in all the key features for making a shmup.
http://gist.github.com/219345

Interesting.  Looks like we both came to a couple similar paths in our designs.
(Not accusing you/your brother of stealing my ideas.  Just observing some already-developing comparison points.  Feel free to let me know if I'm misinterpreting things.)


"There is no @DrawLoop, everything is handled automatically"
Much like Musuu no Danmaku's ability to assign an image to an object, where it automatically draws said object each frame, it sound like.

Although, the way it's written there, it sounds like there won't be any way to draw an arbitrary graphic outside of this automatic functionality ... is this the case?  That would probably be a bit limiting (you could create extra "effect" objects to have the items drawn, but that carries some unnecessary processing overhead.



Building a stage
There were a few ideas similar to this tossed about for Musuu as well.  The idea I came up with was pretty similar to what is shown there (minus the whole state machine thing - I was just creating a stage list to feed the engine based on what the game script decides).
to quote Naut:
"I can see the background, there are too many safespots."
:V

Zengar Zombolt

  • Space-Time Tuning Circle - Wd/Fr
  • Green-Red Divine Clock
Re: Yet Another Danmakufu Clone in the Making...
« Reply #16 on: October 28, 2009, 03:14:29 AM »
Wait ... doesn't 'duel' mean one-on-one?  You cheater, using your brother to help!
You do have Suikama to add brofists to everything you do.

Re: Yet Another Danmakufu Clone in the Making...
« Reply #17 on: October 28, 2009, 03:17:15 AM »
You do have Suikama to add brofists to everything you do.
...........
...................__
............./??/'...'/???`??
........../'/.../..../......./??
........('(...?...?.... ?~/'...')
..........................'...../
..........''............. _.??
..........................(

Blargel

  • RAWR!
  • I'M AN ANGRY LOLI!
Re: Yet Another Danmakufu Clone in the Making...
« Reply #18 on: October 28, 2009, 09:35:00 AM »
You and what army? >:(
Wait ... doesn't 'duel' mean one-on-one?  You cheater, using your brother to help!
Lol oops. You can just duel my brother then.

Quote
Not to be an arrogant jackass, but you two have quite a lot to match up to >:D

Made me ask my brother how much experience had. He's been doing it for maybe as long as you, but I dunno about everything else. He won't tell me though. Maybe 'cause he's worse than you or because he doesn't wanna compete, lol.

Quote
[...]the way it's written there, it sounds like there won't be any way to draw an arbitrary graphic outside of this automatic functionality ... is this the case?  That would probably be a bit limiting (you could create extra "effect" objects to have the items drawn, but that carries some unnecessary processing overhead.

About the unnecessary processing, we chose SpiderMonkey and Javascript because of how fast it processes. If there's a bit of extra processing, it won't be that big of a deal. I'm pretty sure we're going to have a way to draw arbitrary graphics anyway though, so no worries about that.

Quote
There were a few ideas similar to this tossed about for Musuu as well.  The idea I came up with was pretty similar to what is shown there (minus the whole state machine thing - I was just creating a stage list to feed the engine based on what the game script decides).
About the state machine thingy. Yeah, I dunno what's up with him, but my brother likes using them. I took a good long look at it though, and it seems like it'd work well for stage transitions and stuff.
<WorkingKeine> when i get home i just go to the ps3 and beat people up in blazblue with a loli
<Azure> Keine: Danmakufu helper by day, violent loli by night.

Re: Yet Another Danmakufu Clone in the Making...
« Reply #19 on: October 28, 2009, 03:01:25 PM »
About the unnecessary processing, we chose SpiderMonkey and Javascript because of how fast it processes.
Javascript is not fast. It's fast-enough perhaps, but not fast...

Blargel

  • RAWR!
  • I'M AN ANGRY LOLI!
Re: Yet Another Danmakufu Clone in the Making...
« Reply #20 on: October 28, 2009, 03:21:32 PM »
For a scripting language, that's pretty fast. You're comparing Javascript to static compiled languages which will of course be faster. According to that link, Lua is the only scripting language faster than Javascript. We chose Javascript because we weren't too fond of the Lua syntax. Just a personal preference.
<WorkingKeine> when i get home i just go to the ps3 and beat people up in blazblue with a loli
<Azure> Keine: Danmakufu helper by day, violent loli by night.

Nuclear Cheese

  • Relax and enjoy the danmaku.
    • My homepage
Re: Yet Another Danmakufu Clone in the Making...
« Reply #21 on: October 29, 2009, 01:18:36 AM »
You do have Suikama to add brofists to everything you do.

Isn't that more something Suikama does on his/her own will?  I don't remember ever explicitly asking for scripts to have brofists added, and the one time I implied I expected Suikama to add them it never happened.



Made me ask my brother how much experience had. He's been doing it for maybe as long as you, but I dunno about everything else. He won't tell me though. Maybe 'cause he's worse than you or because he doesn't wanna compete, lol.

Just to clarify - I'm not actually trying to start a competition/battle/duel/thermonuclear war.  It's just the trash-talking, hype side of me (usually reserved for fighting game events) showing itself. :3




And as far as the state machine is concerned - it's a perfectly valid way of doing stage transitions.  Perhaps a bit excessive, but certainly valid nonetheless.  For Musuu, I just went with the simplest option that popped into my head.
to quote Naut:
"I can see the background, there are too many safespots."
:V

Re: Yet Another Danmakufu Clone in the Making...
« Reply #22 on: October 29, 2009, 02:03:43 AM »
Isn't that more something Suikama does on his/her own will?  I don't remember ever explicitly asking for scripts to have brofists added, and the one time I implied I expected Suikama to add them it never happened.
Mindgames son

Blargel

  • RAWR!
  • I'M AN ANGRY LOLI!
Re: Yet Another Danmakufu Clone in the Making...
« Reply #23 on: October 29, 2009, 07:42:40 AM »
Just to clarify - I'm not actually trying to start a competition/battle/duel/thermonuclear war.  It's just the trash-talking, hype side of me (usually reserved for fighting game events) showing itself. :3

I understood that but it looks like my brother took it the wrong way. Oh well. That'll just speed up the development a bit, so thanks :D
<WorkingKeine> when i get home i just go to the ps3 and beat people up in blazblue with a loli
<Azure> Keine: Danmakufu helper by day, violent loli by night.

Blargel

  • RAWR!
  • I'M AN ANGRY LOLI!
Re: Yet Another Danmakufu Clone in the Making...
« Reply #24 on: October 31, 2009, 09:51:42 AM »
Yay, we got Flusspferd compiled on Windows! Somehow! When it's not supposed to (not easily at least)!

Now we can actually start binding the Orx features to Javascript and the real work begins. We got Javascript to display... a blank screen. But that blank screen is telling us it's working so, yeah. It's working and now we just bind Javascript to Orx/C++ and start writing the library to make a shooter.

EDIT: I doubt anyone is following this anymore, but if there is someone, here's a status update. We threw everything out and are restarting because binding Orx's library to Javascript proved to be too difficult. At this point in time, I actually don't even care anymore. :V But my brother is sitting at his computer still working on building his own game engine so it'll be a long while. Fun.
« Last Edit: December 19, 2009, 10:21:18 AM by Blargel »
<WorkingKeine> when i get home i just go to the ps3 and beat people up in blazblue with a loli
<Azure> Keine: Danmakufu helper by day, violent loli by night.