Help - Search - Members - Calendar
Full Version: SR4CG
Dumpshock Forums > Discussion > Community Projects
Shadow_Prophet
I have seen there has been several mentions of SR4 Character Generation Programs in various languages and styles. I have recently decided to start my own personal project regarding this.

SR4CG will be done in C# using the .NET framework version 1.1. There is a posibility that I will upgrade it to version 2.0 but that depends on if i can get a good copy of VS2005 when it is released, and or I find a better and or equal development environment (Sharpe Develop comes to mind but atm I still prefer VS2003).

Now before anyone asks, I will not be doing a VB.NET version. Ever. I'm sorry to all you VB developers but I don't need multiple keywords to end my loops, go learn a real language nyahnyah.gif wink.gif .

Now to the good stuff. I am currently in my requirements gathering phase (the first phase). I am creating a list of requirements for the program based off some of the things I've seen here, the rulebook itself, and my thoughts and desires as a GM. This will be the first phase and I will post a list of requirements when I am finished making it. Feel free to suggest things that you may want to see, and once my list is up feel free to ask questions and offer tweaks, changes, and additions.

The second phase will include writing the technical doccuments. Mainly this will be the Functional Specification document, and will posibly include a Detailed Design Document if I am motivated enough (and hopefully I will be). These will also be posted when they are finished. I am doing this for several reasons. I have, unfortunately through experiance, found that lack of these doccuments slows development and causes more problems down the road. With these documents everything will be planned out from how the program will look, to how it will interact with itself and other things. It will also give me the ability to see where my bugs are faster and quicker, as well as you guys having the ability to see where my bugs are faster and quicker so they can be fixed. Also it'll give me the ability, when someone says hey it doesn't do 'xyz', to say I'm sorry it was never designed or intended for that.

The third phase will be the actual coding of the program. Followed by the fourth phase in which you guys will actualy get to use and test it and show me what the heck I screwed up. Then we'll rinse and repeat 3 through 4 till it actualy is finished (my hope).

Now I'd also like everyone to keep in mind that this will be done in .NET. It should run properly on any platform that supports the .NET framework. Which will mean it should run on all windows machines. Mac and Linux however I'm not real sure about. I believe Linux has some? support for it, and I'm completely unsure about Mac as well I don't have one.

Comments and suggestions are welcome, large rocks thrown at my head are not.
Dashifen
Damnit -- that was our name wink.gif
Shadow_Prophet
QUOTE (Dashifen)
Damnit -- that was our name wink.gif

I can change it if you wish. I hadn't realy read too much into the other threads so smile.gif I'll be happy to change it if you want/need me to smile.gif
Kagetenshi
Weren't we looking for a different name anyway based on the fact that it's as bad as NSRCG? wink.gif

Anyway. There are ways to allow .NET stuff to work on other platforms (Mono, Shared Source CLI, etc.), though I'm not sure how well most of them work.

~J
Dashifen
Doesn't really matter to me. Honesly, we could go for cheesy and make SR4CG.NET and PSR4CG. We all love alphabet soup biggrin.gif
Kagetenshi
TOATDPSR4CGAMT?

~J
CrystalBlue
I don't know how much help I'm going to be now that school started. They put us on a large semester project to develop a program or system for a corporation. I'll still try to add input, but I don't think I'm going to be coding anything anytime soon.

If anyone wants help, feel free to ask me. I can look over code or solve a logic problem if you have one. ^.^
Kagetenshi
What're they making you do? Or is it (ugh) open-ended?

~J
CrystalBlue
For the class, we had to go out and find a client who needed a system built. And it was pretty open-ended at that point. But it's also impossible to find anyone around us that doesn't do all of their work on computers. So we finally got a project that I can't even start wrapping my brain around yet.

School is becoming more of a headache then it ever did...*whimper*
Kagetenshi
That is… gah, I stab your instructors so much. What's the project?

~J
Shadow_Prophet
Could those of you who emailed me from here email me again with your email adress' so i can more easily get incontact with you guys.
Knarfy
Heres something I would like to see: The ability to implement a selection of house rules to make cyberlimbs not stupid smile.gif
Kagetenshi
One would assume that gear would be in support files which would be user-editable.

~J
Shadow_Prophet
That is correct, gear and things will be able to be edited through the various files.

And you'd have to elaborate more on the house rule there, since well I don't think they're stupid currently. So I'd need more information regarding that. If its just a equipment change I am planning to have the ability for you to enter in your own gear, and or edit what you have in there already.
Fortune
I would rather see you stick to canon, and let people each add their own home grown modifications.
Jrayjoker
Seconded. Canon gear and rules with modification permitted.

Is there a way to flag any changes or house rules that are entered so that the program recognizes them as non-canon?
Kagetenshi
Just to reiterate, I'm not involved with Shadow_Prophet's project and can't speak for him.

Is there a way to flag non-canon material? Yes, and it's trivial. Is there a way to guarantee that non-canon material of any variety is always flagged as non-canon?

The answer is yes, but it isn't easy. The only way I can think of would be crytographically signing each canon part of the datafiles with a key held by the developer, and throwing a non-canon flag any time non-signed or invalidly-signed material shows up. It isn't all that difficult to implement, but it seems like overkill.

~J
Jrayjoker
Thanks.

I guess I was thinking along the lines of a variable that is required for the data to compile that would indicate that it was entered after the canon data, perhaps with a graphical tag (i.e., the canon material would be hard coded into the program, or at least uneditable, then a second set of data could be added that is an editable by the user).
Kagetenshi
Granted the ways around that are more complex than is usually warranted. However, the problems with that approach:

1) It fails badly for any open-source program. Anyone with any skill can just nuke that section.

2) It fails with more difficulty for closed-source programs. You'd need to do something like decompile the program or take a hex editor to it, but you can still nuke the tag.

3) It fails if you export a character sheet. Want an HTML representation? Oops, you can just nuke the tags. XML? Same deal. PDF/JPG/PNG? Mmm, image editors. You might be able to watermark, but even that's removable with effort. You'd be completely tied to using a non-human-editable character sheet only openable in the program.

Crypto is the way to go here, though my advice is to just not game with people you don't trust enough to verify their own sheets.

~J
Shadow_Prophet
Sorry to those who've contacted me I have not gotten those requirements typed up like I thought I would. I'm working on them today so hopefully before tomorow I'll have them sent out to you guys.
Akilina
I would like to help out, I was going to start one of my own anyway.

I have done some other work in C# and have sone basic object code from when I was toying with the idea.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Dumpshock Forums © 2001-2012