It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
It's not really complicated or anything, but all the same I've only worked on a couple of big things for work and school and they certainly haven't been up the alley I want to pursue right now.

Let's get this out of the way - I want it to be pretty cross-platform, and open source.

And if it's already been done well enough, let me know!

A "Phoenix Wright Editor". A tool for creating text-based games structured anything like Phoenix Wright. Import your artwork, write some scripts, tag your scripts while you're writing them with visual effects and animations and artwork to be displayed, package it into a distributable, and bam! Little more complicated than that of course.

How should a project like this be structured? Right now I'm kind of imagining a two-piece structure, a game loader that reads files and plays the game, and a tool for creating those files. Have them both in the same package? Simply get to the editor from the loader? Even have a loader, rather than creating executables to distribute from the editor?

What technologies can one use to speed along development? I'm looking at SFML right now for cross-platform drawing and audio, but are there any other technologies to look into that might be better? Should it even be in C++ as opposed to Python? Perhaps Python would speed up development and make everything easier, but I haven't gotten into it yet! What technologies do you think would be optimal for this?

I don't want the project to be a mess. I just want people to be able to pick it up and create cool stuff relatively easily. If they wanted to rip off the Phoenix Wright art for a fan story, all they should have to do is build some scenarios which shouldn't be that hard.

EDIT: OH YEAH, I forgot. It would be particularly cool if these games could be published to the web, but that's something I really don't know how to do yet.
Post edited January 12, 2011 by PhoenixWright
No posts in this topic were marked as the solution yet. If you can help, add your reply
Me thinks you should spend some time playing with Alice, alice.org, enjoy. It should give you an idea what you'd want to do in the end.
Well, you wouldn't get the fun of yelling "OBJECTION!" at the game, but maybe that's a good thing. You could still yell it, though, if you really wanted other people to think you're crazy.
avatar
orcishgamer: Me thinks you should spend some time playing with Alice, alice.org, enjoy. It should give you an idea what you'd want to do in the end.
This will probably really get my mind going! Thanks.
avatar
Damuna: Well, you wouldn't get the fun of yelling "OBJECTION!" at the game, but maybe that's a good thing. You could still yell it, though, if you really wanted other people to think you're crazy.
Oh there's definitely going to be mic support, but yeah it sucks that not everyone has a setup where they'd even want to bother.
Post edited January 12, 2011 by PhoenixWright
I've been reading a lot, and I think that the only C++ answer to my idea is a combination of SFML and Qt. However, I'm wondering now about whether or not C++ is the correct choice, when there are things like Processing that allow easy web deployment and things like Python bindings for the technologies I mentioned. Anyone have any advice? I guess I'm the type to get hung up on stuff like this. It's mostly because I'm spoiled by C# and don't know what direction to go in from where I am currently.
avatar
PhoenixWright: I've been reading a lot, and I think that the only C++ answer to my idea is a combination of SFML and Qt. However, I'm wondering now about whether or not C++ is the correct choice, when there are things like Processing that allow easy web deployment and things like Python bindings for the technologies I mentioned. Anyone have any advice? I guess I'm the type to get hung up on stuff like this. It's mostly because I'm spoiled by C# and don't know what direction to go in from where I am currently.
C++ is a royal pain in the ass in comparison to C#, Java, or Python. Only use it if it offers an advantage (e.g. access to an outstanding toolkit). That's my 2 cents.
avatar
orcishgamer: C++ is a royal pain in the ass in comparison to C#, Java, or Python. Only use it if it offers an advantage (e.g. access to an outstanding toolkit). That's my 2 cents.
I can feel that coming, it was kind of a pain even compiling the initial SFML project. What language would you shoot for? Do you think that Java is worth it for the web accessibility? Although if you say yes I'd heavily consider something like Processing... Or is Python just so magical that I should run with it?
avatar
orcishgamer: C++ is a royal pain in the ass in comparison to C#, Java, or Python. Only use it if it offers an advantage (e.g. access to an outstanding toolkit). That's my 2 cents.
avatar
PhoenixWright: I can feel that coming, it was kind of a pain even compiling the initial SFML project. What language would you shoot for? Do you think that Java is worth it for the web accessibility? Although if you say yes I'd heavily consider something like Processing... Or is Python just so magical that I should run with it?
The dirty little secret of the MMO world is that a ton of their net code is in Java, networking is super easy (well, in comparison at any rate). I know the main Blizzard forums are Java because they blew up one day and I saw a stack trace. If you know C# you pretty much know Java, half the toolkits you'd use were straight copies from stuff that was developed first for Java (not really because it's better, mind you, just because it had several years of head start).

Now, there's nothing wrong with Python, and tons of open source libraries support it (I'm pretty sure Qt, which you mentioned, has your back on Python).

I'm still not 100% sure what you want to do. I would flesh out your ideas until you can write some precise, cogent goals (when you read them, you should say, yeah, this is right) then start looking for stuff that makes that job possible (or even easy). You may find a ready-made engine that you can just tack extra stuff onto as needed.

Even back when I had write C++ stuff, we only used it when we had to and often called it as a library from other code. I mean, the days when you had to write your own data structures (or buy some expensive ass libraries) are long gone but I'm pretty sure I've killed kittens with death rays from my eyes whenever I saw someone else's stupid pointer arithmetic; and those days are most definitely not long gone. I don't have to even explain to you how nice garbage collection is. Yes you can still leak memory in garbage collected language, if you're really careless or ignorant. You can be extra careful and still end up leaking in C++.

I guess the real answer to your question is "it depends", you're at the dreaming stuff up phase. Even if you hack together some proof of concept, the language is meaningless, you should delete it as soon as it's served its purpose. I think you'll fall into language and toolkits easily as your ideas congeal.
I had no idea that MMOs used Java for net stuff. Interesting.

Well thanks for the help orcish, I'm glad that you scared me off of C++. You're right, you don't have to explain how nice garbage collection is, and I suppose I really don't want to deal with it for a project that I care about.

I will be trying out some different things, probably starting with Python, and see where those take me. And, of course, solidifying my concepts.
No problem, enjoy, and let us know how it goes:)
There are three such tools which are fairly well developed:

Ace Attorney Online: http://aceattorney.sparklin.org/
Designed for firefox, I don't know how well it runs in other browsers. Multitudes of fangames made for this. Uses an intuitive editor.

PWLib: http://www.ksatechnologyhq.com:1357/mainsite/pwlib
C++ engine, custom scripting language, several games already (I think 1 or 2 are complete)

PyWright: http://pywright.dawnsoft.org/wordpress/
Written in python, works on linux,mac, and windows, also uses a custom scripting language. Several complete games already made.

I made the last one. I never added mic support, something I should look into for future for sure :) I think pwlib has mic support, but not sure if the version that does is public or not.

There's a big group of devs at http://court-records.net/, we used to hang out in the game development section on their forums but their main forums have been down for 2 months now. The back up forums have no specific game section :( Hopefully it comes back soon, I'm getting tired of waiting for it.

Recently I've been able to get PyWright working on android, which is pretty awesome. I'm working on making it run a bit faster, but probably the next-next version will have an android port.

There's no reason NOT to start your own project - it has been a fun learning experience, and everyone solves problems differently. (That's why we have 15 web browsers etc). But do have a look at what's come before. And but for my 2 year old pile of ugly code, I wouldn't mind having some extra help, if you wanted to go that route instead of starting from scratch.

AAO is nice because it has an editor, while pwlib and pywright try harder to be more complete engines that could potentially be useful for more than just copies of the original games. Pwlib is focused on looking and feeling EXACTLY like the originals, while pywright is supposed to be a little simpler to use, gets updates more often, and runs in more places. The nice thing about all of these existing tools is that they already have some history and some fairly quality authors working on game content for them. Then again, new approaches may be able to reach new people better.

Good luck fellow fan!
avatar
saluk: Good luck fellow fan!
Whoa whoa whoa, thanks for those links! You all have done absolutely outstanding work! Now that I know about these other projects I'm rather conflicted about starting my own! I've always thought, those open-source guys are killing themselves by not working together, but at the same time variety is a gift, not a curse. However, just seeing this stuff and having not done any work yet myself I wonder if I could ever get anything going as good as this stuff?

The direction that I've pretty much settled with after a bunch of thinking about it is creating an editor with C# and .NET and WPF, and then using Java to build the "player" and deploy to the web, Android, and PCs. But I just don't know now that I see this other work, perhaps my efforts would be slightly misguided if I started a new project.

I just spent a bit of time with PyWright, and it's amazing. You really have done an excellent job. I mean, it really does seem to be accomplishing everything I wanted to. All three of these projects do, really. Gosh. Well, I am definitely glad these things exist! Now I don't even know what I should focus my efforts on, perhaps one of these projects, or something different entirely! Thanks for posting those links.