Go Back   Flash Flash Revolution > Gaming > Stepmania
Register FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
Old 04-28-2011, 03:49 AM   #1
Patashu
FFR Simfile Author
Retired StaffFFR Simfile Author
 
Patashu's Avatar
 
Join Date: Apr 2006
Location: we traced the call...it's coming from inside the house
Age: 33
Posts: 8,609
Send a message via AIM to Patashu Send a message via MSN to Patashu Send a message via Yahoo to Patashu
Default so I want to code a ddream replacement since its website died

RIP www.ddreamstudio.com . If you need DDReam download it here: http://www.mediafire.com/?82al94e5ot6sfy2

Aside from the site for it being down, there are some core flaws with the program that don't prevent me from stepping with it but introduce unnecessary barriers and irritants.
Major problems:
-No mac or linux build
-No downscroll
-(at least on my laptop) when not focused on DDReam consumes as many cpu cycles as it can
-Can't say B, other unwanted capturing of input, etc
Minor problems:
-Support of stops incomplete
-(at least on my laptop) changing the resolution crashes DDReam
-The keybinding for changing music rate is ctrl+shift+left/right: at least on my laptop this rotates the screen then crashes DDReam
-You can't erase notes you pass over by creating a hold, and other oddities of using holds
-Working with bpms instead of beats is difficult
-Miscellaneous parsing errors

That said, my reasons for wanting to code a replacement are multifold:
1) I really, really need some practice with an actual program - yes, this will be my first serious programming project, and that's really sad
2) I want something that works like ddream but is crossplatform, open source and will have constant development possible on it
3) I'd love to be able to port it as a webpage embedded java applet and/or as an android app

I am intending on writing it in java so I can do 3), using the swing library for window management.
-Does anyone know good java libraries for music file manipulation, e.g. for ddream's waveform display, waveform filtering and ability to change the music rate while playing? How would I do all this?
-Anyone interested in helping out? I could set up a repository for it or something.
-(from Silvuh) growing with subbeats between beats, finding the average/min/max/other stats? bpm of a range of beats

Features I want:
-To be able to step with beats or with bpms and mix the two models on the go depending on what's more appropriate, and to have stops at the same time.
-To be able to look at the chart through cmod or xmod goggles
-Automatic offset and BPM detection using the waveform - this would be sooo useful if I could make it work. Worst case have a sync wizard that'll guide you through doing it by hand.
-Customizable snaps - e.g. if I want to step a file with 64th swing, I'd change to 16th swing, open 'customize snap', untick the yellows and tick the greens immediately after them, then hitting up/down or scrolling the mousewheel would move only to those locations. because moving down to 64ths destroys your mobility
-Swingifier/unswingifier - select a part of the chart, and enter in how much I want to force down each offbeat (or each second beat) and it'll expand/contract every section to compensate. Or I can go the other way, and say how far down I want to reach and pick that up and make it the new midpoint.
-Maybe make the song-long scrollbar have a waveform mimicing the one under the chart and a tiny scale preview of the chart? (might show note densities and clusters instead of the patterns b/c it'd be so shrunken)

Less important features:
-Some kind of hold management techniques - e.g. when laying down taps I want each one to be a hold that lasts to the next tap, or to the tap after that, or half way between the two, or X distance after the first, and if it's going to collide with another note leave a gap of X... things like that could eliminate a lot of tedium
-Automatic shuffling or lateral rearranging techniques, aka what I do automatically to keep stuff from being boring. also pattern suggesters, but this is really low priority because I'd only put this kind of thing to allow me to be really lazy lmao, plus it'd probably be more effort to code than to actually do normally
-A doublestep detector, but this is kind of meh because there are lots of patterns that can be hit using footswitches or doublesteps fine and when jumps are added to the mix it gets ambiguous fast
-Dumping your chart to multimedia formats like: png (aka bemanistyle's simfile preview), animated gif, avi, mp3 with assist tick and beat tick on top of it (maybe separate sounds for chords, holds, mines passing and so on? could be kinda interesting lmao). maybe putting it on ftp/imgur/sendspace?
-Being able to view someone else's chart and comment on it (chat room?) in real time. This would be super cool but I have no idea how to do this and don't want to think 'I HAVE to do this'. It could be very basic, e.g. you attach the program to a port, and when someone else connects with their program to that ip and port it sends the sm and mp3 as it was when they connected, and you can chat back and forth and request a resend.
__________________
Patashu makes Chiptunes in Famitracker:
http://soundcloud.com/patashu/8bit-progressive-metal-fading-world
http://img.photobucket.com/albums/v216/Mechadragon/smallpackbanner.png
Best non-AAAs: ERx8 v2 (14-1-0-4), Hajnal (3-0-0-0), RunnyMorning (8-0-0-4), Xeno-Flow (1-0-0-3), Blue Rose (35-2-0-20), Ketsarku (14-0-0-0), Silence (1-0-0-0), Lolo (14-1-0-1)
http://i231.photobucket.com/albums/ee301/xiaoven/solorulzsig.png

Last edited by Patashu; 04-28-2011 at 07:18 PM..
Patashu is offline   Reply With Quote
Old 04-28-2011, 04:17 AM   #2
m0de
Marble Eater
FFR Veteran
 
m0de's Avatar
 
Join Date: Jan 2006
Location: Joliet, Illinois
Age: 39
Posts: 1,437
Send a message via AIM to m0de
Default Re: so I want to code a ddream replacement since its website died

This sounds like a great idea. I really hope that people can help out as much as possible to make this happen.. Also, the cpu usage problem happens to me while minimized. Good luck with this project Patashu~
__________________
m0de is offline   Reply With Quote
Old 04-28-2011, 04:18 AM   #3
Phlegmatism
FFR Player
 
Phlegmatism's Avatar
 
Join Date: Apr 2011
Posts: 128
Default Re: so I want to code a ddream replacement since its website died

Holy crap, if you can do this halfway successfully, props. Make noteskin support too.
__________________
Phlegmatism is offline   Reply With Quote
Old 04-28-2011, 05:04 AM   #4
ddrxero64
FFR Player
 
ddrxero64's Avatar
 
Join Date: Nov 2008
Location: MA, United States
Posts: 789
Default Re: so I want to code a ddream replacement since its website died

Good luck with this Patashu, I'll help however I can (which probably isn't much). I really shouldn't bring it up, but I don't mean to in a bad way. But this would be great because people are still using the in game editor which just doesn't do as much ore isn't as flexible. If you make it something that's easy to pick up yet awesome enough for advanced features you have yourself an awesome program.

Support here. Let me know if you need testing or anything.
ddrxero64 is offline   Reply With Quote
Old 04-28-2011, 08:21 AM   #5
Patashu
FFR Simfile Author
Retired StaffFFR Simfile Author
 
Patashu's Avatar
 
Join Date: Apr 2006
Location: we traced the call...it's coming from inside the house
Age: 33
Posts: 8,609
Send a message via AIM to Patashu Send a message via MSN to Patashu Send a message via Yahoo to Patashu
Default Re: so I want to code a ddream replacement since its website died

Added a bunch of features I personally want to the first post. Can't get too far ahead of myself though, first thing's first:
1. sm parser to a convenient format in-program, and then an sm writer to spit it back out
2. calculating positions of beats, bpms, stops and notes in a way that is robust to change, rounding errors and quick to access for display
3. defining methods by which I can alter 2. in all the ways I'll want to
4. making the chart displayable, playable on x-mod and c-mod and scroll-through able, displaying beat lines, bpms and stops
5. figuring out how to get music playing, synced to the chart and assist tick/beat tick working, as well as displaying the waveform. this is probably where I'll get stuck lmao so if you know good libraries and idioms for this in java lemme know
6. gui and interaction stuff
7. more of the same
__________________
Patashu makes Chiptunes in Famitracker:
http://soundcloud.com/patashu/8bit-progressive-metal-fading-world
http://img.photobucket.com/albums/v216/Mechadragon/smallpackbanner.png
Best non-AAAs: ERx8 v2 (14-1-0-4), Hajnal (3-0-0-0), RunnyMorning (8-0-0-4), Xeno-Flow (1-0-0-3), Blue Rose (35-2-0-20), Ketsarku (14-0-0-0), Silence (1-0-0-0), Lolo (14-1-0-1)
http://i231.photobucket.com/albums/ee301/xiaoven/solorulzsig.png
Patashu is offline   Reply With Quote
Old 04-28-2011, 08:24 AM   #6
leonid
I am leonid
Retired StaffFFR Simfile AuthorFFR Music ProducerD7 Elite KeysmasherFFR Veteran
 
leonid's Avatar
 
Join Date: Oct 2008
Location: MOUNTAIN VIEW
Age: 35
Posts: 8,080
Default Re: so I want to code a ddream replacement since its website died

You don't really need to make the program cross-platform. Just ensure that it runs fine on Wine.
__________________



Proud member of Team No
leonid is offline   Reply With Quote
Old 04-28-2011, 08:26 AM   #7
Patashu
FFR Simfile Author
Retired StaffFFR Simfile Author
 
Patashu's Avatar
 
Join Date: Apr 2006
Location: we traced the call...it's coming from inside the house
Age: 33
Posts: 8,609
Send a message via AIM to Patashu Send a message via MSN to Patashu Send a message via Yahoo to Patashu
Default Re: so I want to code a ddream replacement since its website died

Quote:
Originally Posted by leonid View Post
You don't really need to make the program cross-platform. Just ensure that it runs fine on Wine.
This is a good point (assuming I don't mind not being able to port to android ez). How can I 'ensure it runs fine on Wine'? Why doesn't DDReam?
__________________
Patashu makes Chiptunes in Famitracker:
http://soundcloud.com/patashu/8bit-progressive-metal-fading-world
http://img.photobucket.com/albums/v216/Mechadragon/smallpackbanner.png
Best non-AAAs: ERx8 v2 (14-1-0-4), Hajnal (3-0-0-0), RunnyMorning (8-0-0-4), Xeno-Flow (1-0-0-3), Blue Rose (35-2-0-20), Ketsarku (14-0-0-0), Silence (1-0-0-0), Lolo (14-1-0-1)
http://i231.photobucket.com/albums/ee301/xiaoven/solorulzsig.png
Patashu is offline   Reply With Quote
Old 04-28-2011, 08:30 AM   #8
iironiic
D6 FFR Legacy Player
FFR Simfile AuthorD7 Elite KeysmasherFFR Veteran
 
iironiic's Avatar
 
Join Date: Jan 2009
Age: 33
Posts: 4,342
Default Re: so I want to code a ddream replacement since its website died

I would love to help but I don't have much programming experience and I will probably not contribute much to the project. It would be really neat to see this though and I wish you the best of luck. Let me know if I can do anything for you.
iironiic is offline   Reply With Quote
Old 04-28-2011, 08:43 AM   #9
TC_Halogen
Rhythm game specialist.
Retired StaffFFR Simfile AuthorFFR Music ProducerD8 Godly KeysmasherFFR Veteran
 
TC_Halogen's Avatar
 
Join Date: Feb 2008
Location: Bel Air, Maryland
Age: 32
Posts: 19,376
Send a message via AIM to TC_Halogen Send a message via Skype™ to TC_Halogen
Default Re: so I want to code a ddream replacement since its website died

One thing that has always irritated me about DDream is that the BPMs go in and out from two different numbers when you use a solid BPM (for example: 154 BPM uses 153.998 and 154.007), which can clutter up the .sm file. It's alleviated when you use the "single BPM" save option, but if a song has a slight change in speed, there's not much that can be done about it.

I really hope you can get this moving, it was somewhat sad to see DDream just disappear the way that it did.

EDIT: Oh hey, this is my 8,500th visible post, haha.
TC_Halogen is offline   Reply With Quote
Old 04-28-2011, 08:48 AM   #10
Jousway
FFR Player
 
Jousway's Avatar
 
Join Date: Jun 2009
Posts: 865
Default Re: so I want to code a ddream replacement since its website died

best is to make an separate windows and mac installer, and an makefile for linux so people can compile it them-selfs for any linux version
__________________
Its not a bug its a FEATURE!



Jousway is offline   Reply With Quote
Old 04-28-2011, 08:48 AM   #11
Patashu
FFR Simfile Author
Retired StaffFFR Simfile Author
 
Patashu's Avatar
 
Join Date: Apr 2006
Location: we traced the call...it's coming from inside the house
Age: 33
Posts: 8,609
Send a message via AIM to Patashu Send a message via MSN to Patashu Send a message via Yahoo to Patashu
Default Re: so I want to code a ddream replacement since its website died

Quote:
Originally Posted by TC_Halogen View Post
One thing that has always irritated me about DDream is that the BPMs go in and out from two different numbers when you use a solid BPM (for example: 154 BPM uses 153.998 and 154.007), which can clutter up the .sm file. It's alleviated when you use the "single BPM" save option, but if a song has a slight change in speed, there's not much that can be done about it.
my plan is that if two bpms are identical to within an epsilon (e.g. less than 0.001) then they'll be considered identical and written out as such
that should fix any problem with unnecessary bpm change (flipside: unnecessary beat placement) information
__________________
Patashu makes Chiptunes in Famitracker:
http://soundcloud.com/patashu/8bit-progressive-metal-fading-world
http://img.photobucket.com/albums/v216/Mechadragon/smallpackbanner.png
Best non-AAAs: ERx8 v2 (14-1-0-4), Hajnal (3-0-0-0), RunnyMorning (8-0-0-4), Xeno-Flow (1-0-0-3), Blue Rose (35-2-0-20), Ketsarku (14-0-0-0), Silence (1-0-0-0), Lolo (14-1-0-1)
http://i231.photobucket.com/albums/ee301/xiaoven/solorulzsig.png
Patashu is offline   Reply With Quote
Old 04-28-2011, 09:54 AM   #12
leonid
I am leonid
Retired StaffFFR Simfile AuthorFFR Music ProducerD7 Elite KeysmasherFFR Veteran
 
leonid's Avatar
 
Join Date: Oct 2008
Location: MOUNTAIN VIEW
Age: 35
Posts: 8,080
Default Re: so I want to code a ddream replacement since its website died

Quote:
Originally Posted by Patashu View Post
This is a good point (assuming I don't mind not being able to port to android ez). How can I 'ensure it runs fine on Wine'? Why doesn't DDReam?
DDream runs fine on Wine. I can test whether your program runs well on mac
__________________



Proud member of Team No
leonid is offline   Reply With Quote
Old 04-28-2011, 10:00 AM   #13
TC_Halogen
Rhythm game specialist.
Retired StaffFFR Simfile AuthorFFR Music ProducerD8 Godly KeysmasherFFR Veteran
 
TC_Halogen's Avatar
 
Join Date: Feb 2008
Location: Bel Air, Maryland
Age: 32
Posts: 19,376
Send a message via AIM to TC_Halogen Send a message via Skype™ to TC_Halogen
Default Re: so I want to code a ddream replacement since its website died

Quote:
Originally Posted by Patashu View Post
my plan is that if two bpms are identical to within an epsilon (e.g. less than 0.001) then they'll be considered identical and written out as such
that should fix any problem with unnecessary bpm change (flipside: unnecessary beat placement) information
very good plan; enough to mask out seemingly irrelevant changes, but allows for a fair amount of detail when fine-tuning sync.
TC_Halogen is offline   Reply With Quote
Old 04-28-2011, 10:26 AM   #14
Silvuh
quit
Retired StaffFFR Simfile AuthorFFR Music ProducerFFR Veteran
 
Silvuh's Avatar
 
Join Date: Apr 2005
Location: anywhere but here
Posts: 938
Default Re: so I want to code a ddream replacement since its website died

ddreamstudio will divide BPMs unevenly, though. Like if you grow a region to 139.942, you'll get different numbers of beats of 139.941 with one beat of 139.948 to average it out. The difference between BPMs is usually 0.007–0.009.

Need have some kind of script that searches for repeating chunks like AAAABAAAABAABAAA with BPM changes of less than a hundredth, which is what four measures of 139.942 grows to. (It averages to 139.9423125)

You can also look at how a .dsx file stores beats, but I couldn't decipher it just by looking at it.


Also yeah, best of luck with this, Patashu. This is going to be great.

The bug about changing resolution making ddreamstudio crash ... I think that has to do with, like, taking up the whole screen. sm-ssc, on load, takes over the screen before switching to a window, which makes ddreamstudio fail. I think it would be the same for any other full-screen computer games, but I don't know.

Really looking forward to seeing more interactivity in the program, like being able to drag notes along the snap or between directions.

Know you said you don't want to get too far ahead of yourself, but you have a good list of features there, so ... I've found it obnoxious that the program won't grow beats with sub-beats between them. Sometimes I just want to select major areas and hit G so it will show me the average BPM of the section. What would be great would be if the program had a script to calculate an approximate range of significant BPMs (though it would still be nice if it was at least easier to find it manually, in case the calculator doesn't always work.)

Would be thrilled if I could find a good BPM range for tracks like Rain, Snow, and Sleet and Serenade of Storms with just a few clicks of the mouse. (Given that the beats are already placed, of course. I don't expect a script to sync live piano recordings for me, haha.)
__________________
Silvuh is offline   Reply With Quote
Old 04-28-2011, 07:52 PM   #15
TheLaughingSpaz
FFR Player
FFR Veteran
 
TheLaughingSpaz's Avatar
 
Join Date: Apr 2006
Posts: 7
Default Re: so I want to code a ddream replacement since its website died

This is quite an undertaking. I suggest you check with the SM devs for advice and to see if anyone has actually started working on something like this. I lurk in the #stepmania-devs IRC channel and remember this conversation from 12-18-2010:

Quote:
[17:12:51] <wolfman2000> StepMania has gotten too complicated. I don't want my limited programming skills to atrophy away. I need to find a new programming project to join...hopefully I'll be more useful there
[17:13:18] <shakesoda> http://github.com/shakesoda/Rhythm-Station
[17:13:20] <shakesoda>
[17:13:36] <wolfman2000> Very funny. I'm still inimidated by your project
[17:13:50] <shakesoda> me too
[17:13:53] <shakesoda> that's what makes it fun
[17:14:00] <wolfman2000> I may just need to find something outside of music games...I don't know
[17:14:12] <wolfman2000> It's a little hard to find it fun when I've gotten frustrated most of the time
[17:14:23] <shakesoda> plug aside, why not work on some kind of tool or demo
[17:15:00] <wolfman2000> shakesoda: Already have a tool/demo. My Edit Creator, remember?
[17:15:10] <shakesoda> then make more!
[17:15:17] <shakesoda>
[17:15:28] <wolfman2000> shakesoda: That requires me to figure out what to make.
[17:15:50] <wolfman2000> There is no need for a DDR/ITG style creator
[17:16:03] <shakesoda> there is need for a better simfile editor period
[17:16:45] <wolfman2000> ...then perhaps we should work on that
[17:16:49] <wolfman2000> In small pieces of course
Quote:
No downscroll
Why is that a major problem for an editor?

Quote:
-Maybe make the song-long scrollbar have a waveform mimicing the one under the chart and a tiny scale preview of the chart? (might show note densities and clusters instead of the patterns b/c it'd be so shrunken)

-Dumping your chart to multimedia formats like: png (aka bemanistyle's simfile preview), animated gif, avi, mp3 with assist tick and beat tick on top of it (maybe separate sounds for chords, holds, mines passing and so on? could be kinda interesting lmao). maybe putting it on ftp/imgur/sendspace?
Nice ideas.

Quote:
-Being able to view someone else's chart and comment on it (chat room?) in real time. This would be super cool but I have no idea how to do this and don't want to think 'I HAVE to do this'. It could be very basic, e.g. you attach the program to a port, and when someone else connects with their program to that ip and port it sends the sm and mp3 as it was when they connected, and you can chat back and forth and request a resend.
Better served by actual chat clients imo.

Quote:
-Anyone interested in helping out? I could set up a repository for it or something.
I might have been interested if I didn't have a 2 hour commute and it wasn't in Java. If you just want someone to look over your code or something, I could probably do that.

Quote:
1) I really, really need some practice with an actual program - yes, this will be my first serious programming project, and that's really sad
Good luck! Creating a real application that is used by real people would be a nice thing to have on a resume.
TheLaughingSpaz is offline   Reply With Quote
Old 04-28-2011, 07:56 PM   #16
leonid
I am leonid
Retired StaffFFR Simfile AuthorFFR Music ProducerD7 Elite KeysmasherFFR Veteran
 
leonid's Avatar
 
Join Date: Oct 2008
Location: MOUNTAIN VIEW
Age: 35
Posts: 8,080
Default Re: so I want to code a ddream replacement since its website died

Quote:
Originally Posted by TheLaughingSpaz View Post
Why is that a major problem for an editor?
Because some stepauthors can't read upscroll (e.g. me)
__________________



Proud member of Team No
leonid is offline   Reply With Quote
Old 04-28-2011, 08:09 PM   #17
NeoMasterPie
Forum User
 
NeoMasterPie's Avatar
 
Join Date: Jul 2007
Age: 29
Posts: 1,405
Default Re: so I want to code a ddream replacement since its website died

omg... this sounds amzin... you have my full support (':

edit: this is just something very minor, but i think it would be cool to eventually support 3.9 noteskins to step with if you can figure it out
__________________

NeoMasterPie is offline   Reply With Quote
Old 04-28-2011, 08:48 PM   #18
qqwref
stepmania archaeologist
Retired StaffFFR Simfile AuthorFFR Veteran
 
qqwref's Avatar
 
Join Date: Aug 2005
Age: 34
Posts: 4,090
Default Re: so I want to code a ddream replacement since its website died

Quote:
Originally Posted by Patashu View Post
-To be able to step with beats or with bpms and mix the two models on the go depending on what's more appropriate, and to have stops at the same time.
If you make something like ddream which lets you sync from the perspective of BPM, I will use it for stepping. Also you will be awesome. Just sayin'.
__________________
Best AAA: Policy In The Sky [Oni] (81)
Best SDG: PANTS (86)
Best FC: Future Invasion (93)
qqwref is offline   Reply With Quote
Old 04-28-2011, 09:24 PM   #19
Jousway
FFR Player
 
Jousway's Avatar
 
Join Date: Jun 2009
Posts: 865
Default Re: so I want to code a ddream replacement since its website died

Quote:
Originally Posted by leonid View Post
Because some stepauthors can't read upscroll (e.g. me)
well you better learn then , I can read up and down scroll
__________________
Its not a bug its a FEATURE!



Jousway is offline   Reply With Quote
Old 04-28-2011, 09:32 PM   #20
ddrxero64
FFR Player
 
ddrxero64's Avatar
 
Join Date: Nov 2008
Location: MA, United States
Posts: 789
Default Re: so I want to code a ddream replacement since its website died

Quote:
Originally Posted by Jousway View Post
well you better learn then , I can read up and down scroll
Or you can install both to make it customizable. I can read both default and flashy noteskins.

Same concept.
ddrxero64 is offline   Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump



All times are GMT -5. The time now is 09:32 PM.


Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright FlashFlashRevolution