PDA

View Full Version : Junior Developers


Baron Sprite
05-22-2004, 08:35 PM
Interested in becomming an EQEMu dev?
Here's how to get started:
Post code snippets (not dbs, this isn't for world building) on this forum
Make sure to stick "Jr Dev Code" up at the top of your post and in the topic.
If it works out ok you will be flagged as a Junior Developer and gain access to a special board.
Make sure to put all your code snippets on the new forum as well as reading the sticky there.
Devs will merge your code for you and help you out (doesn't mean they will teach you to program).

Scorpious2k
05-23-2004, 01:24 AM
Some of you have already posted useful and working fixes. You are the reason we started this. Yes, we noticed!

So, for those of you who have a headstart and a history of contributions out there, here's an alternative for you. Post a message, saying you are interested and include links to some of your code changes/additions.This will let us know you are interested and remind us of the coding you have already done.

I am eager to see this get going. I know we have some great talent out there. I've seen your work. I believe this is going to help the Emu move forward much more quickly and prevent anything from falling through the cracks as it may have in the past.

Looking forward to working with you. :-)

cofruben
05-23-2004, 02:51 AM
not sure if this is enough,but im working for more features.
http://www.eqemulator.net/forums/viewtopic.php?t=14489
http://www.eqemulator.net/forums/viewtopic.php?t=14937
http://www.eqemulator.net/forums/viewtopic.php?t=14665
I have done some features to my server too,but I need to go atm,will post later.Cya :twisted:

Valex
05-24-2004, 02:16 PM
#include

int main() {
cout << "Hello world!";
while(1) { }
return 0;
}

RangerDown
05-24-2004, 06:29 PM
Sorry Valex, no cigar :(

1) Won't compile, need name of include file expected after #include directive. <iostream.h> would be a good one since you're using cout.

2) Your program will go in an infinite loop doing absolutely nothing because of your while statement.

kugrug
05-25-2004, 02:21 PM
Sorry Delete please i will post in forum not this post

kugrug
05-25-2004, 02:22 PM
valex you forgot std:: in front of the cout

but you could have added
using std::cout; after you did main()

Valex
05-26-2004, 03:14 PM
=(( dang





may i ask somthing,

Are we suppose to put c++

and also for making features for ur server,do u use C++ or perl?

Is EMu made out of C++?

Sorry,
just want to know=)

Shadow-Wolf
05-26-2004, 04:25 PM
valex you forgot std:: in front of the cout

but you could have added
using std::cout; after you did main()

ummm yeah....first leason, If you can keep it simple DO IT there is no need fot std:: infront of cout Example:

#include <iostream.h>

int x;
int y;
int z;
(it is a good idea to declare all your variables before you work on functions because i have recieved alot of errors when declaring variables in ohter functions)

int main()
{
cout<<"Hello please enter 2 numbers to be multiplyed."<<endl;
cout<<"Enter the first number now."<<endl;
cin>>x;
cout<<"Now enter your seconed number."<<endl;
cin>>y;
z=x*y;
cout<<"Here is the answer."<<z<<endl;
system("pause");
return 0;
}

Hmm its been a while since i have done any type of programming as my computers been breaking down but i believe that is correct.

sandy
05-27-2004, 11:37 AM
hi =)
I'm a worldbuilder but if i can help a little I would be glad
Here's last thing i have written :
http://www.eqemulator.net/forums/viewtopic.php?t=15117

themushygod
06-05-2004, 09:57 PM
what languges are you intrested in

i can do a couple of languges but mainly vb.net and java

or is eqemu dont in c++ (next on list to learn)

Richardo
06-08-2004, 02:16 AM
Dont forget that you have to invert x and y, to fit to lives standars.. no?

Plutonium239
06-09-2004, 07:52 AM
I must try this.

Valex
06-11-2004, 03:11 PM
if (expression) {
statements;
} else {
statements;
}

for (expression; expression; expression) {
statements;
}

do {
statements;
} while (expression);

while (expression) {
statements;
}

switch (expression) {
case constant:
statements;
break;
default:
statements;
break;
}

aendaar
07-11-2004, 06:54 AM
#include <iostream>
using namespace std;
int main()
{

int a = 243;
int b;
int c;

cout<<"what is the password?";
cin>>b;
{ if(b == a)
cout<<"how did you find out the password?!";
}
{ if(b != a)
cout<<"haha! you dont know the password...go die..";
}
cin>>c;
return 0;
}

my skillz are leet

Draupner
07-12-2004, 08:43 AM
Here are some of the things I have done so far. Got a few more things I'm testing atm now.

http://www.eqemulator.net/forums/viewtopic.php?t=15862
and
http://www.eqemulator.net/forums/viewtopic.php?t=15959

Branks
08-28-2004, 06:56 AM
not the greatest yet but im learning slowly and if theres anything i can learn about the project through the other forum or if theres a large list of time consuming little things that need fixed, i want in!

http://www.eqemulator.net/forums/viewtopic.php?t=16398

Branks
08-30-2004, 06:21 PM
so i guess thats a no? a response would have been nice =/

Scorpious2k
08-31-2004, 03:42 AM
I think its more a case of there's a lot going on and it takes a while to notice.

Zkhava
09-05-2004, 03:40 PM
// Purpose: messages travel both up and down the layers,
// message interface per layer per direction,
// one concrete Facade per layer (implements 1 or 2 interfaces)
// Singleton access to Facade objects

#include
using namespace std;

class ChildOf3 { public: virtual void downMessage() = 0; };
class ParentOf2 { public: virtual void upMessage() = 0; };
class ChildOf2 { public: virtual void downMessage() = 0; };
class ParentOf1 { public: virtual void upMessage() = 0; };

class C : public ParentOf2 { public:
void execute();
void upMessage();
};
class B : public ParentOf1, public ChildOf3 { public:
void upMessage();
void downMessage();
};
class A : public ChildOf2 { public:
void downMessage();
void execute();
};

class SC { // Singleton Collection
public:
static C& layer3() { return cObject; }
static B& layer2() { return bObject; }
static A& layer1() { return aObject; }
private:
static C cObject; static B bObject; static A aObject;
};
C SC::cObject; B SC::bObject; A SC::aObject;

void thirdParty( ChildOf2& obj1, ChildOf3& obj2, ParentOf2& obj3 ) {
obj1.downMessage();
obj2.downMessage();
obj3.upMessage();
}

void main( void ) {
SC::layer3().execute();
SC::layer1().execute();
thirdParty( SC::layer1(), SC::layer2(), SC::layer3() );
}

// C::execute // A::execute // A::downMessage
// B::downMessage // B::upMessage // B::downMessage
// A::downMessage // C::upMessage // A::downMessage
// C::upMessage

void C::execute() { cout

Zkhava
09-05-2004, 03:41 PM
Thats some code for a game im making :)

monalin crusader
09-05-2004, 03:46 PM
This code wont do anything, and if it does what the hell is it doing? Besides developers are looking for contributions that you've made to EQEmu theres nothing showing us that you didnt just copy that form somewhere. I know i'm not a developer just telling you what they will tell you.

sotonin
09-05-2004, 03:58 PM
Geez zkhava. i think i prolly already told you this before.

posting code is pointless unless it fixes or adds something to eqemu. nobody cares about a game you're making. And if they did, you'd be better posting it in offtopic not adding to here like you deserve junior dev or something.

for all we know you prolly cut and paste that from some game code snippet site. It's nothing special =(

Melwin
09-06-2004, 03:05 AM
Geez zkhava. i think i prolly already told you this before.

posting code is pointless unless it fixes or adds something to eqemu. nobody cares about a game you're making. And if they did, you'd be better posting it in offtopic not adding to here like you deserve junior dev or something.

for all we know you prolly cut and paste that from some game code snippet site. It's nothing special =(

Let's leave it at that, or I'll start editting posts. There's a thread about this gentlemen, and it's been locked for a reason!

sotonin
09-30-2004, 08:10 AM
bah NM. somebody must have updated something. --- ignore

-Kumadar-
11-07-2004, 11:22 AM
#include <iostream.p>
using std;
int main()
{

int a = 243;
int b;
int c;

cout<<"what is the password?";
cin>>b;
{ if(b == a)
cout<<"how did you find the password out?!";
}
{ if(b != a)
cout<<"u should know the password ";
}
cin>>c;
return 0;
} :D

sotonin
11-07-2004, 11:42 AM
/bow down to the c++ genius :lol:

RangerDown
11-07-2004, 11:53 AM
Ok pop quiz, Kumadar.

Somebody has found out the password is 243. So now I don't want the password to be hard coded into the program anymore. I wish for it to read from a file in the same folder as the program named pwd.txt.

Please post the modified program that will do this :P

Cisyouc
11-07-2004, 01:38 PM
Can the text file be in a typical INI type style?

RangerDown
11-07-2004, 02:12 PM
No, the contents of the pwd.txt file are just the password. Nothing else.

And I wanna see a submission from Kumadar, not you :P

Cisyouc
11-22-2004, 01:39 PM
The LoginServer Source? 0.o

1337357
11-22-2004, 02:20 PM
what is that illegal?

Cisyouc
11-22-2004, 03:58 PM
Kind of useless without the eqcrypto.dll, no?

-edit-
Besides, it isn't complete anyway.

daeken_bb
11-23-2004, 01:07 AM
Kind of useless without the eqcrypto.dll, no?

-edit-
Besides, it isn't complete anyway.

It's useless either way because they changed the crypto and the protocol lol

Cisyouc
11-23-2004, 01:09 AM
Kind of useless without the eqcrypto.dll, no?

-edit-
Besides, it isn't complete anyway.

It's useless either way because they changed the crypto and the protocol lolTrue, but doesn't mean you couldn't RUN it (even if you cant log into it)

...not that that would help.

daeken_bb
11-23-2004, 01:11 AM
Kind of useless without the eqcrypto.dll, no?

-edit-
Besides, it isn't complete anyway.

It's useless either way because they changed the crypto and the protocol lolTrue, but doesn't mean you couldn't RUN it (even if you cant log into it)

...not that that would help.

With slight modification (actually, just define MINILOGIN or PUBLIC_LOGIN) you could run it without eqcrypto.dll I'm sure :P

Just completely pointless :)

Doodman
11-23-2004, 09:13 AM
Please:
1) Don't post things that are not your own work.
2) Don't post 981273918273 lines of source in here.

SuedeWorthey
06-12-2005, 12:16 AM
I have been working on some of the 0.6.1 DR1 Bugs, and I am interested in becoming a Jr. Dev...
http://www.eqemulator.net/forums/showthread.php?t=18731

Take a look and tell me what you think so far.
Thanks,
-Suede-

arigo
06-13-2005, 06:07 PM
// You have to run the program before deciding
// Remember, a promise is a promise
#include <iostream>
using namespace std;

int main()
{
cout << "I would like the privilege to see the dev board for educational purposes. "
<< endl << "However, I do not want the gay junior dev title."
<< endl << endl << "You will allow me to see the board right?"
<< endl << "(Y)es/(N)o:";
char willnottakenoforanswer = 'n';

cin >> willnottakenoforanswer;

while ((willnottakenoforanswer!='y') && (willnottakenoforanswer!='Y'))
{ cout << "Wrong answer, please try again." << endl;
cin >> willnottakenoforanswer;
}
cout << "That was the right choice.";
return 0;
}

ffchung
07-03-2005, 12:52 AM
Want to try dev eqemu code . and how can I update code if needed.
just show at here ? .

// Can item be equipped?

bool ItemCommonInst::IsEquipable(int16 race, int16 class_) const
{
if (!m_item)
return false;

bool israce = false;
bool isclass = false;

if (m_item->Slots == 0) {
return false;
}

uint32 classes_ = m_item->Common.Classes;
uint32 races_ = m_item->Common.Races;
int32 race_ = 0;
#ifndef PACKETCOLLECTOR
race_ = GetArrayRace(race);
#endif
// @merth: can this be optimized? i.e., will (race & common->Races) suffice?
if( ((1<<(class_-1)) & classes_) > 0 )
{
isclass = true;
}
if( ((1<<(race-1)) & races_) > 0 )
{
isclass = true;
}
/*
for (int cur_class = 1; cur_class<=15; cur_class++) {
if (classes_ % 2 == 1) {
if (cur_class == class_) {
isclass = true;
}
}
classes_ >>= 1;
}

for (unsigned int cur_race = 1; cur_race <= 15; cur_race++) {

if (races_ % 2 == 1) {
if (cur_race == race_) {
israce = true;
}
}
races_ >>= 1;
}
*/
return (israce && isclass);
}

RangerDown
07-03-2005, 03:12 AM
Please explain what the above does :)

There's a line enclosed in #ifdef PACKETCOLLECTOR... there's a whole block just commented out. Did you even make any changes or did you just copy and paste a block from the code verbatim?

ffchung
07-03-2005, 03:31 AM
That is code in eqemu
commom\item.cpp

I have optimize the code. And I think there was a bug that BERSERKER always return false.

Function : ItemCommonInst::IsEquipable



bool ItemCommonInst::IsEquipable(int16 race, int16 class_) const
{
if (!m_item)
return false;

bool israce = false;
bool isclass = false;

if (m_item->Slots == 0) {
return false;
}

uint32 classes_ = m_item->Common.Classes;
uint32 races_ = m_item->Common.Races;
int32 race_ = 0;
#ifndef PACKETCOLLECTOR
race_ = GetArrayRace(race);
#endif

// Changed by ffchung
// new code start
if( ((1<<(class_-1)) & classes_) > 0 )
{
isclass = true;
}
if( ((1<<(race-1)) & races_) > 0 )
{
isclass = true;
}
// new code end

// old code start
/*
// @merth: can this be optimized? i.e., will (race & common->Races) suffice?
for (int cur_class = 1; cur_class<=15; cur_class++) {
if (classes_ % 2 == 1) {
if (cur_class == class_) {
isclass = true;
}
}
classes_ >>= 1;
}

for (unsigned int cur_race = 1; cur_race <= 15; cur_race++) {

if (races_ % 2 == 1) {
if (cur_race == race_) {
israce = true;
}
}
races_ >>= 1;
}
*/
// old code end

return (israce && isclass);
}

arigo
07-03-2005, 03:12 PM
I don't understand why we have to prove anything about ourselves to gain acess to the board. It's not as if there are any rewards to being a dev to begin with. I want access to the board for information that it might have. Maybe I'll do something useful, and maybe I won't. What do you have to lose?

ffchung
07-03-2005, 07:11 PM
That is code in eqemu
commom\item.cpp

I have optimize the code. And I think there was a bug that BERSERKER always return false.

I am not sure what
Function : ItemCommonInst::IsEquipable


Code:

bool ItemCommonInst::IsEquipable(int16 race, int16 class_) const
{
if (!m_item)
return false;

if (m_item->Slots == 0) {
return false;
}

uint32 classes_ = m_item->Common.Classes;
uint32 races_ = m_item->Common.Races;

// ************************************
// ffchung :
// I dont know what it realy want to
// As I see it want to convent the the race value
// but why only use when PacketCollector
// else race_ only will keep at zero .
// then it will never return true
// so I am not to use it at this time.
// but keep the code here for later use.
// ************************************

int32 race_ = 0;
#ifndef PACKETCOLLECTOR
race_ = GetArrayRace(race);
#endif

// ************************************

retrun ( ((1<<(class_-1)) & classes_) && ((1<<(race-1)) & races_) )
}