Re: C Programmers Wanted![message #100312]
|
Thu, 11 March 2004 09:44
|
|
Mouse_Master |
|
Messages:31
Registered:March 2004 Location: Suitland, MD |
|
|
Is using the source 'as is' the best course to take? I mean, should you use the MS compiler, or maybe convert the code to work in GCC?
Just a thought I would like to throw out, convert the code to build under GCC, and then maybe setup JA2 to use the SDL libs for sound/graphics. Doing this could also make JA2 cross platform to almost any system (Windows/Unix/Mac).
Probably a lot of work, but maybe not. I am sort of a programmer, but have never dealt with much in Windows, almost all in Unix, but I did pick up Wildfire specifically to look at the source, hoping it might have been the Linux source.
Report message to a moderator
|
Private 1st Class
|
|
|
Re: C Programmers Wanted![message #100313]
|
Thu, 11 March 2004 12:23
|
|
PegasusJF |
|
Messages:19
Registered:March 2004 Location: Northern IL |
|
|
Hello, this is my first post after lurking for a long while.
I have some experience in C++, but that's several years old. Currently I work in PHP, so I can work with minor parts of code with my current knowledge.
However, I feel I can add more to this as my capacity as a artist. I currently am studying Animation at the Illinois Institute of Art Schaumburg. I own academic versions of Poser 4, and 3DS Max, so I can contribute art to whatever new actions you wish to code in.
I was a frequent visitor to the TerraVirtua Forums prior to JA2's initial release, and some suggested from playing the demo certain useful features like gathering objects from unconcious characters or pulling said characters out of the line of fire.
But it can go far more than that, honestly (and perhaps I'm talking rubbish, since I have virtuallly no experience what having the source code can accomplish) We can add more vertical levels like X-COM Apocalyse, increase the size of the tactical maps, make usable vechicles, more characters, even change the whole setting (like make at X-COM remake that is never made)
This may all be me in fantasy land, but playing the game several times I believe the engine is robust enough to do a lot more that what it currently does. I could go on and on with ideas, but well, you guys just asked for my programming skills, and well, what's above is what I can do code and art-wise. I'll save the ideas for another time.
God Bless!
PegasusJF
Report message to a moderator
|
Private
|
|
|
|
|
Re: C Programmers Wanted![message #100316]
|
Fri, 12 March 2004 03:27
|
|
ja2source |
|
Messages:6
Registered:March 2004 Location: Germany |
|
|
Hi Shanga,
got two years of C expirience from technical school and six month experience from practical work in C.
Been working as a programer/administrator since summer 1999.
Practical Experience in:
Unix/Linux Shell-Scripting, Perl, Maintenance of C programes, Database programming in Oracle (PL/SQL) and MS Access (VB/VBA), and above all excessive JA2
From all the procedural languages I've written code in untill today C is still the one I like most. I know ANSI C, the standardized C from International Standards Organization (ISO) quite good but have never seen Microsoft C. My hope is that MS C is not too proprietery "enhanced" and that SirTech stayed true to the ANSI C ISO standard wherever they could. Today in the morning my copy of wildfire finally arrived and after work I'm gonna have a first look at the code to get an answer to some of my questions about it.
Two things came to my mind when thinking about JA2 development:
-- Programming Guidelines -> comments in code, readability of code, maybe programming in hungarian notation (speaking variable names, prefix, suffix, etc., see http://web.umr.edu/~cpp/common/hungarian.html)
I think programming guidelines are important for every software project. They make the code easier readable to every programer out there. Good experienced programers automatically comment their code when writing it because they already know that maybe a year and three software projects later they'll have to work again on the same code for another update/enhancement/bugfix. Comments in code help everybody. Same goes for variable names. They can be chosen in a way that nobody knows what they're there for. On the other side a variable name can reflect what the variable was introduced for and that makes reading code much easier in my opinion.
-- Project Management -> which projects shall be implemented, who does what, timelines, teams and groups
The main thing about managing ja2 development would be to avoid incompabilities between modified or newly implemented source code. This incompabilities happen naturally when different programers change the same piece (or dependant parts) of code. Without defined projects and teams every programer is gonna start modifying what comes first to his mind and thus we're gonna have many incompatible derivates of JA2 soon.
After installing MS VS 6.0, reviewing the JA2 code and building it with some help from Digicrab's already made experience (see http://www.ja-galaxy-forum.com/cgi-bin/ubb/ultimatebb.cgi?ubb=get_topic&f=5&t=000802) I'll be able to say if I can really handle it.
But I'm interested as hell and greedy to see JA2 from the inside, as you can guess by my lengthy reply.
Regards
Ivan
Report message to a moderator
|
Private
|
|
|
|
Re: C Programmers Wanted![message #100318]
|
Fri, 12 March 2004 08:03
|
|
Dev. Dale Danger |
Messages:1
Registered:March 2004 |
|
|
My buddy Arno told me about this and I'd be more then happy to help out.
C++ is where most of my experience lies but I've have done some C coding.
Report message to a moderator
|
Civilian
|
|
|
|
Re: C Programmers Wanted![message #100320]
|
Sat, 13 March 2004 00:40
|
|
Mouse_Master |
|
Messages:31
Registered:March 2004 Location: Suitland, MD |
|
|
Quote:Originally posted by Digicrab:
With regards to people wanting to switch to gcc and whatnot, I don't agree. Everything works now, I don't see what can be gained by moving the src to a diffrent compiler. GCC, a compiler available to everyone for free, that is the biggest gain.
Moving away from the other libs, well, that is more of a CYA move, you don't want to release your fixed up version of JA, and have a software company come sue you because you used their IP without paying. SDL is not the only option, but many other source packages moved to SDL as an option.
Report message to a moderator
|
Private 1st Class
|
|
|
|
|
|
|
|
|
|
|
|
|
Re: C Programmers Wanted![message #100331]
|
Sat, 13 March 2004 13:55
|
|
Headshot |
|
Messages:176
Registered:May 2002 Location: Los Angeles ( Hollywood )... |
|
|
@Shanga
I have to say moving to the white board is very frustrating. I am not a C programer but I can easily read and understand most of what I have read in the source code. I do understand Basic, Visual Basic, Hex and machine language from back in the days of the Commodore 64 and Amiga and pick up languages pretty fast.
When a discussion on the white board cant have a question asked, nor a comment made it just seems to exclusive, and I for one think it is wrong. This is after all supposed to be a public source code work, and as such should not just include current C programmers.
Case in point: Under the heading ... The move to data-driven dynamics
The discussion is on making it modder friendly to add or remove items and the difficulties involved. One metioned thing was about the item code for sungoggles and how they work throughout the program. Great... I see how changing that item would be difficult, but in order to make a modifiable data base table with items that are NOT directly hard coded should not be a problem.
Also to Digicrab when he says that the indices of the objects would be shifted if something were removed that is not always true, as a place holder of null data could be placed where the removed item was thus keeping the list intact.
Another:
I read a post that asked to have the AIM mercs not to be killed off when they have not been hired. OK easy
The code to be changed is simple:
Here is the original code in the source. ( from the tactical / campaign data )
// handles possible death of mercs not currently working for the player
void HandleUnhiredMercDeaths( INT32 iProfileID )
{
UINT8 ubMaxDeaths;
INT16 sChance;
MERCPROFILESTRUCT *pProfile = &(gMercProfiles[ iProfileID ]);
// if the player has never yet had the chance to hire this merc
if ( !( pProfile->ubMiscFlags3 & PROFILE_MISC_FLAG3_PLAYER_HAD_CHANCE_TO_HIRE) )
{
// then we're not allowed to kill him (to avoid really pissing off player by killing his very favorite merc)
return;
}
// how many in total can be killed like this depends on player's difficulty setting
switch( gGameOptions.ubDifficultyLevel )
{
case DIF_LEVEL_EASY:
ubMaxDeaths = 1;
break;
case DIF_LEVEL_MEDIUM:
ubMaxDeaths = 2;
break;
case DIF_LEVEL_HARD:
ubMaxDeaths = 3;
break;
default:
Assert(FALSE);
ubMaxDeaths = 0;
break;
}
// if we've already hit the limit in this game, skip these checks
if (gStrategicStatus.ubUnhiredMercDeaths >= ubMaxDeaths)
{
return;
}
The variables are defined at the top and the info to change is simple.
Make the statements for Easy, Medium, Hard all the same.
ubMaxDeaths = 0;
As the default is set to zero no matter what difficulty level is selected the game will never kill off any AIM merc while on assignment elsewhere in the world.
It does not take a C programer to see this. I would have liked to suggest it to the " Programers on the White Board " but alas I am not allowed nor is anyone else not selected to be On The List.
Gee thanks...
:argue:
Headshot
Report message to a moderator
|
Staff Sergeant
|
|
|
|
|
|
|
|
|
|
|
Re: C Programmers Wanted![message #100340]
|
Sun, 14 March 2004 02:10
|
|
pythagoras |
|
Messages:7
Registered:March 2004 Location: Paris, France |
|
|
Greetings to the group,
First of all, let me say that i'm absolutely thrilled by the availability of the JA2 source code. I've always been a fan and as a programmer myself i've always dreamed of peeking at the mechanics of such a great game.
Even more, as i've made a hobby out of isometric programming, it's even more interesting to see how the guys at Sir-Tech built their own iso engine.
After a day of browsing through the code and experiencing a bit, i'm willing to join the common effort of making JA2 an even better game.
I've a good experience of C/C++ and a few other languages and it's been a few years that i've been making isometric engines (i know there are a few here who had a look at an old engine of mine, namely IsometriX from http://www.isometrix.org ).
Digicrab and a few others have already began to document parts of the code and i think this is the way we should follow for the beginning.
When things will be more clear and the directions to follow defined, a cvs server will need to be set up to avoid overlapping of modifications.
But i guess all this will come in good time. In the meanwhile, i think we will all be experiencing a bit more to get a more intuitive feeling for the code.
Pythagoras (aka Mister Y)
Report message to a moderator
|
Private
|
|
|
|
|
|
|
Re: C Programmers Wanted![message #100345]
|
Mon, 15 March 2004 17:57
|
|
ggeorgo |
Messages:4
Registered:January 2003 Location: Athens, Greece |
|
|
Hello gyus,
I downloaded the sources and compiled without problems...
I run the new exe and .... tadaaaa!!!!....
It works!!!...... wow!
I even managed to comment out the code for the splash screens, to start straight without them...
I am a professional programmer working in a private firm in Athens Greece.
I know very well C and C++ and I would be very interested to participate in a modification of the original JA2
my emails: ggeorgo@internet.gr, ggeorge@srb.gr
Report message to a moderator
|
Civilian
|
|
|
|
|
|
|
|
|