Pages

Showing posts with label A3 Online. Show all posts
Showing posts with label A3 Online. Show all posts

Map to Bmp A3 Online

Caution
- This is a method that I personally use.
- This may be not a precise way.

1. Open the map file in a hex editor. (ex. Temoz(..\ZoneData\map\1))
2. Necessary data is 262144 bytes from the end of the file.
3. Separately 262144 bytes in each 4 bytes, and then do the following.
- a. The first byte X 0x8000
- b. Express the result in reversed hex 3 bytes.
- c. Attaching to continue the 3 bytes of the result.
4. 196608 bytes of data are generated as a 3rd result. I called this BITMAPLINE.
5. BITMAPHEAD = '424D380003000000000036000000280000000001000000010000010018000000000002000300120B0000120B00000000000000000000'
6. BMP = BITMAPHEAD & BITMAPLINE
7. Save the results(BMP, 196662 bytes). Extension to the bmp.


Result of files that have been converted map number 1 to bmp.
bmp


Ragezone
Read more ...

Snowing A3 Online 562

Edit A3Client.exe (v562)

Snow Covered in TOWN
00816B37
Find :- (00816B37)
33 D2 85 D2 0F 84 2B 01 00 00
Replace :-
33 D2 85 D2 90 90 90 90 90 90

Snowing in TOWN

Find :- (00866CD7)
81 C1 D0 0B 00 00 E8 81 74 E5 FF 33 C0 85 C0 74 1D
Replace :-
81 C1 D0 0B 00 00 E8 81 74 E5 FF 33 C0 85 C0 90 90



Read more ...

Strs A3 Online 219

[Guide] Strs of IT0.bin
I am trying to make strs of A3 219 files
Now I will share it with you
First,you must have a program named Structorian
Second,make a new txt and copy Structure below in it and save as .strs
Third,load IT0.bin with .strs file in Structorian and you can edit weapons and armors easier.
You must notice that this strs is not complete because I dont know all the hex numbers.
If you know,please tell me and I will complete it.
Thanks!

Please help me complete no.3,8,24,33,42,51,60,69,78,87,96
and if strs has mistakes,tell me.
Sor for bad eng :))

Strs update1 (thx Prot help)
[filemask="IT0.bin"]


struct IT0s
{
    child IT0 [count=1006];
}


struct IT0[preload=1, tableview=1]
{
  i16 Cal*1024;
  i16 ItemCode;
  i16 3;
  i16 ItemType;
str[len=32] Name;
  i32 Price;
  i16 Class;
  i16 Range;
  i16 8;
  i16 1st.AtkSpeed;
  i16 2nd.AtkSpeed;
  i16 3rd.AtkSpeed;
  i16 4th.AtkSpeed;
  i16 5th.AtkSpeed;
  i16 6th.AtkSpeed;
  i16 AdditionalAtk;
  i16 Lv1.STR;
  i16 Lv1.DEX;
  i16 Lv1.INT;
  i16 Lv1.BasicDmg&Def;
  i16 Lv1.MaxDmg+;
  i16 Lv1.Ice;
  i16 Lv1.Fire;
  i16 Lv1.Lighting;
  i16 24;
  i16 Lv2.STR;
  i16 Lv2.DEX;
  i16 Lv2.INT;
  i16 Lv2.BasicDmg&Def;
  i16 Lv2.MaxDmg+;
  i16 Lv2.Ice;
  i16 Lv2.Fire;
  i16 Lv2.Lighting;
  i16 33;
  i16 Lv3.STR;
  i16 Lv3.DEX;
  i16 Lv3.INT;
  i16 Lv3.BasicDmg&Def;
  i16 Lv3.MaxDmg+;
  i16 Lv3.Ice;
  i16 Lv3.Fire;
  i16 Lv3.Lighting;
  i16 42;
  i16 Lv4.STR;
  i16 Lv4.DEX;
  i16 Lv4.INT;
  i16 Lv4.BasicDmg&Def;
  i16 Lv4.MaxDmg+;
  i16 Lv4.Ice;
  i16 Lv4.Fire;
  i16 Lv4.Lighting;
  i16 51;
  i16 Lv5.STR;
  i16 Lv5.DEX;
  i16 Lv5.INT;
  i16 Lv5.BasicDmg&Def;
  i16 Lv5.MaxDmg+;
  i16 Lv5.Ice;
  i16 Lv5.Fire;
  i16 Lv5.Lighting;
  i16 60;
  i16 Lv6.STR;
  i16 Lv6.DEX;
  i16 Lv6.INT;
  i16 Lv6.BasicDmg&Def;
  i16 Lv6.MaxDmg+;
  i16 Lv6.Ice;
  i16 Lv6.Fire;
  i16 Lv6.Lighting;
  i16 69;
  i16 Lv7.STR;
  i16 Lv7.DEX;
  i16 Lv7.INT;
  i16 Lv7.BasicDmg&Def;
  i16 Lv7.MaxDmg+;
  i16 Lv7.Ice;
  i16 Lv7.Fire;
  i16 Lv7.Lighting;
  i16 78;
  i16 Lv8.STR;
  i16 Lv8.DEX;
  i16 Lv8.INT;
  i16 Lv8.BasicDmg&Def;
  i16 Lv8.MaxDmg+;
  i16 Lv8.Ice;
  i16 Lv8.Fire;
  i16 Lv8.Lighting;
  i16 87;
  i16 Lv9.STR;
  i16 Lv9.DEX;
  i16 Lv9.INT;
  i16 Lv9.BasicDmg&Def;
  i16 Lv9.MaxDmg+;
  i16 Lv9.Ice;
  i16 Lv9.Fire;
  i16 Lv9.Lighting;
  i16 96;
  i16 Lv10.STR;
  i16 Lv10.DEX;
  i16 Lv10.INT;
  i16 Lv10.BasicDmg&Def;
  i16 Lv10.MaxDmg+;
  i16 Lv10.Ice;
  i16 Lv10.Fire;
  i16 Lv10.Lighting;
}
danny5417
Ragezone
Read more ...

Acl File A3 Online 562

able to create and manage acl file is AS and MS.
the share to be fixed in the hex editor.
however, 562 server is not fully functional only with this work.
ZA 562 version is required for the 562 server runs.
does not need a work of encryption and decryption of the packet acl in ZA, I'll make them available as soon as this.


change of MS
- find: (change of two positions)
75 84 D9 01 00 8B 55 08 8A 42 32 A2 76 84 D9 01
8B 4D 08 8B 91 90 00 00 00 81 E2 FF 00 00 00 88
15 77

- change to:
76 84 D9 01 01 8B 55 08 8A 42 32 A2 77 84 D9 01
8B 4D 08 8B 91 90 00 00 00 81 E2 FF 00 00 00 88
15 78




change of AS
- find:
C6 84 05 5D FB FF FF FF EB D2 68 AC 03 00 00 8D
8D 48 FB FF FF 51 8B 95 F8 FE FF FF 52 E8 1E A3

- change to:
C6 84 05 5E FB FF FF FF EB D2 68 AC 03 00 00 8D
8D 48 FB FF FF 51 8B 95 F8 FE FF FF 52 E8 1E A3


- find:
8A 54 08 31
- change to:
8A 54 08 32

- find:
00 8A 55 0C
- change to:
00 32 01 90

- find:
8A 55 10
- change to:
8A 55 0C

- find:
E8 85 D2 FF FF 8B 40 04 8B 4D F4
- change to:
E8 85 D2 FF FF E9 8A 09 00 00 90

- find:
6D 4A 40 00 83 4C 40 00 CC CC CC CC CC CC CC CC
CC CC CC CC CC CC CC CC CC CC CC CC CC CC CC CC
CC CC CC CC CC CC CC CC CC CC CC CC CC CC CC CC
CC CC CC CC CC CC CC

- change to:
6D 4A 40 00 83 4C 40 00 CC CC CC 8B 40 04 8B 4D
F4 81 E1 FF 00 00 00 69 C9 BC 00 00 00 8A 55 10
88 54 08 33 8D 4D F8 E8 D5 C8 FF FF 8B 40 04 8B
4D F4 E9 4B F6 FF FF


- find:
8A 4C 02 31
- change to:
8A 4C 02 32

- find:
C6 44 16 31 FF
- change to:
C6 44 16 32 FF

Ragezone
Read more ...

Remove Level Restriction A3 Online

Equip Shue (Level Restriction removed)
It is necessary that character level should be more than or equal to Bird level in order to equip it.

By making following changes player will be able to wear any level Shue at any level.

Open Zoneserver.exe in Hex Editor

Find this :
3B C2 76 05 E9 6E 01 00 00 8B 45 FC

Change to this :
3B C2 EB 05 E9 6E 01 00 00 8B 45 FC

Chaitanya
Ragezone
Read more ...

Remove Party Restriction A3 Online

Party asking (Not all Members in map) Restriction removed
It is quite irritating for players when someone says to Ask party and after asking, a message shows up saying "Not all party members in same map".

Here is the solution to this Badboy message (As asked by l58450190) !

Open Zoneserver.exe into hex editor.
Search for these bytes :
33 C9 66 8B 48 54 3B D1 74 0A B8 04 00

Replace with these :
33 C9 66 8B 48 54 3B D1 EB 0A B8 04 00

This will add a member in party even if all players are not in map.

Chaitanya
Ragezone
Read more ...

Chat Record A3 Online

To chat record of all users.
This article was created using Google Translate.

Long time no see

I tried to change the ZS to modify the format of the tap file, tap the chat for all users.
I will tell you how to fix in hex ​​editor ZS.

Find this:
55 8B EC B8 14 21 00 00 E8 C3 3B 18 00 53 56 57
8D BD EC DE FF FF B9 45 08 00 00 B8 CC CC CC CC
F3 AB 8B F4 8B 45 08 50 68 40 C2 6D 00 8D 4D C0
51 FF 15 7C 48 C1 01 83 C4 0C 3B F4 E8 4F 27 18
00 8D 55 10 89 95 B8 DF FF FF 8B F4 8B 85 B8 DF
FF FF 50 8B 4D 0C 51 8D 95 BC DF FF FF 52 FF 15
BC 48 C1 01 3B F4 E8 25 27 18 00 C7 85 B8 DF FF
FF 00 00 00 00 6A 00 E8 A4 8A 18 00 83 C4 04 89
85 34 DF FF FF 8D 85 34 DF FF FF 50 E8 2F 88 18
00 83 C4 04 89 85 30 DF FF FF 8B 8D 30 DF FF FF
51 68 30 C2 6D 00 68 00 01 00 00 8D 95 38 DF FF
FF 52 E8 69 79 18 00 83 C4 10 68 CC C1 6D 00 8D
45 C0 50 E8 68 33 18 00 83 C4 08 89 85 2C DF FF
FF 83 BD 2C DF FF FF 00 75 02 EB 3B 8B 8D 2C DF
FF FF 51 8D 95 38 DF FF FF 52 E8 71 93 18 00 83
C4 08 8B 85 2C DF FF FF 50 8D 8D BC DF FF FF 51
E8 5B 93 18 00 83 C4 08 8B 95 2C DF FF FF 52 E8
2C 30 18 00 83 C4 04 5F 5E 5B 81 C4 14 21 00 00
3B EC E8 69 26 18 00 8B E5 5D C3 CC CC CC CC CC
CC CC CC CC CC CC CC CC CC CC CC CC CC CC CC CC
CC CC CC CC CC CC CC CC CC CC
Change to:
55 8B EC B8 14 21 00 00 E8 C3 3B 18 00 53 56 57
8D BD EC DE FF FF B9 45 08 00 00 B8 CC CC CC CC
F3 AB 8B F4 6A 00 E8 F5 8A 18 00 83 C4 04 89 85
34 DF FF FF 8D 85 34 DF FF FF 50 E8 80 88 18 00
83 C4 04 89 85 30 DF FF FF 8B 8D 30 DF FF FF 51
68 30 C2 6D 00 68 00 01 00 00 8D 95 38 DF FF FF
52 E8 BA 79 18 00 83 C4 10 8B 45 08 50 8D 8D 38
DF FF FF 51 68 40 C2 6D 00 8D 55 C0 52 E8 DE 4D
18 00 83 C4 10 8B 8D 30 DF FF FF 51 68 D4 C2 6D
00 68 80 00 00 00 8D 95 38 DF FF FF 52 E8 7E 79
18 00 83 C4 10 8D 55 10 89 95 B8 DF FF FF 8B F4
8B 85 B8 DF FF FF 50 8B 4D 0C 51 8D 95 BC DF FF
FF 52 FF 15 BC 48 C1 01 3B F4 E8 C1 26 18 00 C7
85 B8 DF FF FF 00 00 00 00 68 CC C1 6D 00 8D 45
C0 50 E8 49 33 18 00 83 C4 08 89 85 2C DF FF FF
83 BD 2C DF FF FF 00 75 02 EB 3B 8B 8D 2C DF FF
FF 51 8D 95 38 DF FF FF 52 E8 52 93 18 00 83 C4
08 8B 85 2C DF FF FF 50 8D 8D BC DF FF FF 51 E8
3C 93 18 00 83 C4 08 8B 95 2C DF FF FF 52 E8 0D
30 18 00 83 C4 04 5F 5E 5B 81 C4 14 21 00 00 3B
EC E8 4A 26 18 00 8B E5 5D C3

Find this:
2E 5C 25 73 2E 74 78 74 00 00 00 00 00 00 00 00
Change to:
2E 5C 54 41 50 5C 25 73 5F 25 73 2E 74 78 74 00

Find this:
85 D2 74 3A
Change to:
85 D2 74 60

Please note the following points:
1. You must create the TAP folder. ex) Zonserver\TAP
- tap file is recorded under the TAP Folder

2. The format of tap file name is as follows. (It's generated on a daily)
- [YYYY-MM-DD]_Character.txt

3. The contents of tap file is as follows.
- [HH-MM-SS] Chat

4. Please not the last action if the user of taplist want to tap.

prologos
Ragezone
Read more ...

Storage Box Items A3 Online

Items X 100 for storage boxes
Here is a simple tutorial for this one.

Let's consider the code of 100 UJ

The Code is 17;1644544;659990;0
The Code for UJ is 6144
The Code for A Storage Box is 17

And the constant Zoneserver uses to calculate the Count of items in a storage box is 16384
Simple logic to generate a box will be

17; (16384 x ItemCount) + ItemCode ;659990;0

To reverse the process (to get the details of the codes)

Simply,

Take 1644544 (from the example code of 100 UJ box)
Now, we will divide 1644544 by the constant 16384 and will get the remainder out of it. The remainder will the Item code of the item and the Quotient will be the count of the Item in the storage box.

In PHP you can simply use this to get the details :
$itemnumber fmod($2ndcode16384);$bb = $2ndcode $itemnumber;$count $bb 16384;
Prot
Ragezone
Read more ...

Disable PK A3 Online

PK Disable in specific map
This article was created with the help of Google translation.
If this post useful, please move to the tutorial.

You can find the area under the debugger and I opened the ZS.
By leveraging well here, you can make it impossible to PK the specified map.

Address | Command
00521FE1 | MOV EDX,DWORD PTR SS:[LOCAL.1]
00521FE4 | XOR EAX,EAX
00521FE6 | MOV AX,WORD PTR DS:[EDX+54]
00521FEA | CMP EAX,14 : Comparing the number of the current map - 0x14 = 20 = Nevia
00521FED | JNE SHORT 00522016 : Jump, if map is different from the number 20. PvP is possible.
00521FEF | MOV ECX,DWORD PTR SS:[LOCAL.1]
00521FF2 | MOV EDX,DWORD PTR DS:[ECX+98]
00521FF8 | AND EDX,000000FF
00521FFE | MOV EAX,DWORD PTR SS:[LOCAL.2]
00522001 | MOV ECX,DWORD PTR DS:[EAX+98]
00522007 | AND ECX,000000FF
0052200D | CMP EDX,ECX : Comparison of the village of Player1 and Player2
0052200F | JNE SHORT 00522016 : Jump, PvP is possible If the different village of Player1 and Player2.
00522011 |JMP 005220A6 : Jump, PvP is impossible If the same village of Player1 and Player2.

prologos
Ragezone
Read more ...

Remove Limit Gift A3 Online

GM Commands: GIFT command limit to release
This article was created using Google Translator.

Character to give the gift items are limited.
Is a way to relieve this restriction.

This method has been tested in Taiwan PartIV Zoneserver.

ZoneServer.exe a hex editor to open the following tasks.
Find this:
8B 85 58 FB FF FF 25 FF FF 00 00 89 85 1C F6 FF FF

Change to:
E9 49 01 00 00 90 25 FF FF 00 00 89 85 1C F6 FF FF

prologos
Ragezone
Read more ...

Standalone A3 Online Client

A3Client.exe to be a stand-alone
First, I can not speak English well.
I was tested with 219 clients.

Use a hex editor to Find this:
3B 45 F4 74 06

Change 74 to EB:
3B 45 F4 EB 06

prologos
Ragezone
Read more ...

Winter Map A3 Online

Applies the winter map
I was tested with 219 clients.
This can be done by editing the A3client.exe

- Snow-covered town
Find this:
33 D2 85 D2 0F 84 2B 01 00 00

Change to:
33 D2 85 D2 90 90 90 90 90 90

- Snowing town
Find this:
33 D2 85 D2 74 1D

Change to:
33 D2 85 D2 90 90

prologos
Ragezone
Read more ...

Fix DDS A3 Online

DDS Problem Solved..
Hello Guys...

i have checked old Threads about DDS problem
if it is solved before then i am sorry for this post and if not then enjoy it...
in this thread malecomrade explained about dds options...

here is the solution and u will get this dds converter on net or here is the link...
after that use this TDB
in a3 project data files(.TDB) .dds files r made in DXT1 and DXT3
in GUI.TDB... LOADING_NEW_ARCHER.DDS is DXT1
and A3_PART5_LOGO.DDS is DXT3

so... after making image to .DDS.... check the original .DDS file(K. Byte)
if K. Byte is same then rebuild the .TDB file and paste .TDB in a3 data file and go in game and check the changes...
if K. Byte is not equal to original then check the option of dds Converter that file which u converted it is in DXT1 or DXT3

Allorango
Ragezone
Read more ...

A3 Online 562

This guide is intended to be a starting point for noobs New Users to teach you how to start out on A3 562 Server and have a good experience and become good A3 netizens. Any input is welcomed.

To all new users, Ragezone is a great place where you can learn a lot about how to make your Server better, have fun talking to other smart people about your Server and the A3 , and maybe be recognized for your efforts. But first there are a few things you need to know about Ragezone to be a good netizen. I suggest bookmarking any of the links below which might seem helpful since chances are in the future it will be helpful to you or to someone else and you will have it bookmarked.

Getting Started
First, please start here by Reading the Rules ||A3 Rules||
This enables you to post questions and helpful replies to other people's questions and get Likes.

Reading
The best way to start is not by posting, it is by reading. Read, search, read, search. If you read an answer that looks helpful or answers a question you might have, bookmark it, and when you see someone else ask that question you will have the answer for them plus a supporting link.
strongly encourage reading ALL of the stickied notes and guides in the A3 & subforum which this guide is in, as well as the stickied guides in your subforums. The stickied guides are pinned to the top of the subforum, you can see a little Yellow icon() to the left. They are always at the top of the subforum view, even if other threads have newer posts in them.

You might be thinking "What, that's too much!?", or TL;DR (too long, didn't read). It is a lot, true... a lot of very valuable information, questions answered, problems solved...assembled and organized and right there for you to read and learn without having to work to search for it.
Many people have put in countless hours of their personal time to enter in this knowledge for you to learn it and apply it successfully to your Ragezone experience and Server, and the mods have put them at the top of the subforum pages so you don't have to work to find them.
Please don't waste their time or yours.

Searching
When you have a question you don't know the answer to, don't post a new thread when you could post a question in a relevant open thread, and don't post a question when a few minutes reading and searching will not only give you an answer, but a feeling of accomplishment that you were able to find it yourself, and the confidence to remember and repeat the answer with the link to the thread or post with that answer when you see someone else post that question.
Consider the question you are going to post, pick out the keywords and type them into the search box. Try a few different searches with slightly different words.
You can also search Ragezone with Google. Just add site:forum.ragezone.com/f98 to your search terms.

Giving Likes & Reputation
Giving Like and Reputation is important. It lets people know that their work or answer is appreciated. It is a faster method of feedback than posting a reply like "Thanks for your answer!" You must have one post to give like, so here is a good place you can do that without running afoul of the mods for posting no content posts.
Note that Like and Reputaion are an indication of a user's status or stature on Ragezone. Some of the most important people here have a lot fewer Like and Reputation than you might guess.

Posting
Posting is something you may do a lot of here, but it is always important to remember to make your posts good ones. Don't post just to drive up your count, there is no special reward for the poster with the highest total and you won't catch the long timers here anyways.
You will find that there are some restrictions on your posting ability when you first start here. For starters, for your first 5 posts, there is a captcha prompt and a time limit in between posts. While this may seem burdensome, it does an excellent job of keeping spammers from posting garbage throughout every thread. There is a 2 minute limit between posting and editing your posts. This stops at 30 posts when you go from Junior Member to Member.

Posting Questions
OK, you got through all that and you have a question that you need that answer to. You have searched, and searched again, and searched again with different keywords, but you can't find the answer. The question is, where do you post it? The first and best place is to check A3 General section & subforum for a thread posted there, either a general question thread, or a thread already posted there with a similar question. When you post into a thread, that thread is then listed at the top of the subforum it is in and the title turns Bolded for everyone else. Someone else may see that thread and know the answer and post it.
Remember, give it some time before reposting. Ragezone members live around the world and are not going to be on your time zone and schedule. Wait a day and see if you get a response. If you want a notification of someone else posting into that thread, click on the Thread Tools button at the top of the thread and choose Subscribe, or click the Subscribe button at the top of the page.


Getting Flamed
At some point, you are going to get "flamed" by someone who feels that your post is stupid, off-topic, irrelevant, noobish, whatever, and they are going to post something like "You are an XXXXX who doesn't know something simple like YYYYY. Don't post here anymore." It is going to happen at some time here, but the important part is not to respond in kind. It will not help the situation, or make your e-peen any bigger, or make you any tougher. It might make you feel better temporarily, but what invariably happens is that the forum mod (or a senior mod) will come in and delete those comments and you might end up on the infraction list, or temporarily disabled, or banned. Just don't reply to it. First, consider the question or post you wrote from a different angle. There is no excuse for flaming someone, but in a multi-cultural environment things may be perceived very differently than what you intended. Second, if the flame is really over the line, click on the little triangle in the upper right hand corner of the post and type in a short explanation and let the mods handle it.

Signature
Making a signature is a very important thing to do since it can help to describe your phone, it's current software, and any modifications you have installed.
A signature should inform others about your phone when you post a question.
A good signature will include information helpful to others beyond the direct target of the question/reply.
A great signature will inform the community with important information and potentially answer questions which have not been asked yet, avoiding repetitive posts.
It's cool and you will get more help and respect from us.
If you need some ideas for a signature or are willing to share yours

Remember, always be respectful of other members here and considerate. Most people here are doing this for nothing more than the feeling of helping people as we have been helped by other people previously, and sometimes the occasional press of the thanks button. We aren't making money here and this isn't a job, so please don't tell people what to do or demand things of people such as mods or custom ROM configs to suit you and you will do just fine here.

Setting UP A Basic A3 Server
The Guide is more or less same as that of episode 3 server with almost no change provided you use the files given by me in my post.


OK lets start with the first step to host an a3 server ..
but first of all .. this guide is for one who is setting up the server for the first time so u have to compromise with some facts to get 100% success.. (eg the pass used) u can change it later.
u need some files ...
1. a3 client...(TTA3 client preferably)
2. a3server files
3. sql 2000
4. sql 2000 servicepack3
5. a hex editor

Episode 5 A3 Client( TTa3 Client)

Or you can download client from following link

Gamefront


A3 219 Server Files Modded by me
Gamefront

***UPDATE***(10 March 2011)
Beta Server
A3 Legacy

Download Server files:-
JumboFiles.com - Dedicated Hosting

Download Client Files:-
DuckLoad.com Easy streaming


Important Files + A3 Client hexed to 127.0.0.1
Gamefront

GT.ULL to be used with Client for Coverting ingame messages to English
Gamefront


Tools for editing server nd client files
Gamefront
Microsoft is no more hosting the SQL server 2000 so you can use sql server 2005.

first of all install sql 2000 & its service pack...
i m trying to explain the process in brief..
double click the sql 2000 setup file(SQLEVAL.exe)
extract it to c:\ or whatever location u want...
then go to the location & double click the setup.exe
press next> next> next>
then put the name as "sa" (without ")..
next> yes> next> next> next>
select the "use the local system account"..
next>
select the mixed mode & put password as ley (u can choose any other password too but u have to change some file`s content if u choose other password..so i recommend u to choose this password for the first time & after u become an expert use ur own password)
next> next>Finish.
now double click the sql 2000 service pack3 & just click next next (don't change any selection)..
now restart ur computer once..

second step is to place the server files to the correct place

extract the a3server files to d:\

be sure that the location must be as d:\a3server\..... not d:\a3server\a3server\...

now extract the files provided in the folder named C to put in C drive (obviously extract it to c:\)
then go to C:\clan & double click on the mkdir.exe

now go to start>program files>Microsoft SQL server>Service Manager
& click start server..
be sure to remember the server name there coz u ll need the name later..
now go to start>all programs>Microsoft SQL Server>Enterprise Manager
now go to microsoft SQL Servers>SQL server group>(local)(Windows NT)>Databases
now u have to create some new databases here by going to action>new database..

1.ASD
2.Character
3.itemstorage
4.Clan
5.A3ItemEvent
6.FriendDB
7.HSDB
after making these all databases u have to restore some databases by this process
Go to Tools>Restore Database
select A3ItemEvent
choose "from devices" option
click on select devices
click add
click "..."
provide the location d:\A3server\db\A3ItemEvent
now press OK OK OK OK
now u have to do the same process with all these databases
1.A3ItemEvent (done)
2.ASD
3.clan
4.FriendDB
5.HSDB

now go to security tab (found in left hand side)
press Action>New Login
this is the process where many do a mistake ..... do this process carefully]
put
name = a3serial
Password = dkdlxpawprhdnpc
Database = A3ItemEvent
select the database access tab & tick the a3ItemEvent, then tick the db_owner
& press OK
it will ask for the password again put dkdlxpawprhdnpc & press OK
(some times it gives an error "Login serial already exists" .. if u too get this error message then go to Databases>A3itemEvent>users & delete the a3serial there... then again do the process mentioned above)
the next step is ODBC
go to start>control panel>administrative tools>Data Sources (ODBC)>System DSN
now press add
select sql server.. press Finish.
now put
name = A3ItemEvent
server = {your server name} (the name i told to remember previously.. if u forgot then go to start>program files>Microsoft SQL server>Service Manager
& click start server ... u ll see the server name there)
now press next
now it will show 2 options there .. select the second option & put
Login ID : sa
Password : ley
now press next
select change database to .. & select A3ItemEvent there
now press next... finish .. OK
u have to do this same process with some more databases too

here is the list

A3Friend = FriendDB
A3RcvResult = A3ItemEvent
A3SerialList = A3ItemEvent
ASD = ASD
EventA3 = ASD
FriendDB = FriendDB
HSDB = HSDB
LETTERDB = ASD
LocalServer = ASD
Login202 = ASD
NEWASD = ASD

the next process is to make a .reg file..
a .reg file is already given in the serverfiles in the folder named important files & shortcuts
if its there then just double click on it & press yes yes
or if u r using any otherserver files then u have to make a .reg file by the following process
first of all copy the text which i m giving below


Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI]

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\A3Friend]
"Driver"="C:\\WINDOWS\\System32\\SQLSRV32.dll"
"Server"="(local)"
"Database"="FriendDB"
"LastUser"="sa"

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\A3RcvResult]
"Driver"="C:\\WINDOWS\\System32\\SQLSRV32.dll"
"Server"="(local)"
"Database"="A3ItemEvent"
"LastUser"="sa"

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\A3SerialList]
"Driver"="C:\\WINDOWS\\System32\\SQLSRV32.dll"
"Server"="(local)"
"Database"="A3ItemEvent"
"LastUser"="sa"

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\EventA3]
"Driver"="C:\\WINDOWS\\System32\\SQLSRV32.dll"
"Server"="(local)"
"Database"="ASD"
"LastUser"="sa"

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\FriendDB]
"Driver"="C:\\WINDOWS\\System32\\SQLSRV32.dll"
"Server"="(local)"
"Database"="HSDB"
"LastUser"="sa"

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\HSDB]
"Driver"="C:\\WINDOWS\\System32\\SQLSRV32.dll"
"Server"="(local)"
"Database"="HSDB"
"LastUser"="sa"

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\LETTERDB]
"Driver"="C:\\WINDOWS\\System32\\SQLSRV32.dll"
"Server"="(local)"
"Database"="FriendDB"
"LastUser"="sa"

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\LocalServer]
"Description"=""
"Server"="(Local)"
"Trusted_connection"=""
"UseProcForPrepare"="Yes"

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\Login202]
"Driver"="C:\\WINDOWS\\System32\\SQLSRV32.dll"
"Server"="(local)"
"Database"="ASD"
"LastUser"="sa"

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\NEWASD]
"Driver"="C:\\WINDOWS\\System32\\SQLSRV32.dll"
"Server"="(local)"
"Database"="ASD"
"LastUser"="sa"

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources]
"LocalServer"="SQL Server"
"A3RcvResult"="SQL Server"
"A3SerialList"="SQL Server"
"FriendDB"="SQL Server"
"NEWASD"="SQL Server"
"Login202"="SQL Server"
"LETTERDB"="SQL Server"
"EventA3"="SQL Server"
"A3Friend"="SQL Server"
"HSDB"="SQL Server"

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC File DSN]
"DefaultDSNDir"="C:\\Program Files\\Common Files\\ODBC\\Data Sources"
  
now go to start>run
type notepad
press enter
now paste the text in it & save it on the desktop by putting its name as ODBC.reg
now go to your desktop & just double click on the ODBC.reg file... press yes OK ..
& u r almost done

the server is now ready to run....
but its only for ur own PC... if u want it to run on LAN then u have to change some .ini files...
Put ur LAN or wan ip in place of 127.0.0.1 in these places

1.d:\A3server\Loginagent\LoginAgent.ini
  
;//////////////////////////////////////////////////////////////////////////////////////////
;//GameServer ȯ°æ º¯¼ö ¼³Á¤ ÆÄÀÏ
;//////////////////////////////////////////////////////////////////////////////////////////

[VersionInfo]

HighVersion = 300 ;//CurrVersion <= HighVersion
LowVersion = 136 ;//CurrVersion > LowVersion


[LoginAgent] ;//tcp

IPADDR = 127.0.0.1
PORT = 3550

2.d:\a3server\Loginserver\Loginserver.ini

[STARTUP]
APPNAME=LOGINSERVER
ZONEAGENTLISTENPORT=3200
LOGINAGENTLISTENPORT=3210
STARTID=3

[LOGINASD]
COUNT=1
IP0=127.0.0.1
PORT0=7770

3.d:\a3server\Zoneagent\ZoneAgent.ini

[STARTUP]
APPNAME=ZONEAGENT
SERVERID=0
AGENTID=0
#ZONE AGENT ³o¸Ì«ü¥»¾÷ªº IP
IP=127.0.0.1
PORT=3300

be sure .. don't change any other ip instead of above mentioned 3 ips...

1 more thing u have to edit some .ini files to make ur char a GM char...
first go to D:\a3server\Battleserver\Gminfo.ini & delete hawkiii & put ur Id(i ll tell later that how to make id.. so just put the id u wanna create for ur char)

do the same in D:\a3server\Mainserver\Gminfo.ini & D:\a3server\Zoneserver\Gminfo.ini & D:\a3server\accountserver\Gminfo.ini
  
your server is ready to run...

but first u have to make ur id
there is a tool named a3acc.dat in the important files & shortcuts folder.. just put the id , press enter then put pass , again enter, enter , enter
this will make a new notepad in the same folder named a3acc.txt
open the a3acc.txt & copy the text.... for those who don't have the a3acc.dat tool i m giving u a text
put id in place of xxx & password in place of yyy

INSERT INTO account (c_id, c_sheadera, c_sheaderb, c_sheaderc, c_headera, c_headerb, c_headerc, d_cdate, c_status, m_body) VALUES ('xxx','yyy','yyy','yyy','yyy','yyy','yyy','1/1/2003 12:00:00','A','yyy')

copy this full text & go to start>all programs>Microsoft SQL Server>Query Analyzer
put ur server name
Login ID : sa
Password : ley
change the master to ASD on the toolbar on the top of the window
now paste the copied text in the notepad provided there
then press ctrl+f5 then press f5
your account is created
create some accounts for ur friends too


OK .................
now time to start the server

Bute before running server, install Borland Database Engine provided in folder "bde".

Now run the exe in following order
1: D:\a3server\0DB_PORT\7770\asd_mw_v1.3.21a Similarly do it in 8880 & 9990 folders
2: D:\a3server\1LoginServer\newLoginServer
3: D:\a3server\2Loginagent\enLoginAgentr (Wait until you get run OK message else run it again)
4: D:\a3server\3Zoneagent\EnZa_v2.0.16a
5: D:\a3server\4mainserver\MainServer.exe
6: D:\a3server\6accountserver\AccountServer.exe
7: D:\a3server\7Zoneserver\Zoneserver.exe(24.7mb)
8: D:\a3server\8BattleServer\BattleServer.exe
9: D:\a3server\9new\CenterServer.exe
10: D:\a3server\5A3_Util\MWCLDB.exe

Note: Zoneserver always takes time to run. So after clicking zoneserver.exe, leave your pc as it is and wait for zoeserver to run. It may take 2-5 minutes to run.

last process is to hex ur Episode 5 A3client ip to your ip or 127.0.0.1 if u wanna play it alone in ur PC (remember, use the ip u used earlier i.e.if u used ur wan ip then put ur wan ip & if u used 127.0.0.1 then use this one only)
hope u know how to hex A3client`s ip....
I have providing a3client.exe hexed to 127.0.0.1 . in 'Important files and Shortcuts' you can use that a3client.

thanx to Akaruz(the Godfather of A3 Private Servers), Legendary, protisback, charlie_ravi and all.....
This guide is developed from the work of above mentioned people. I have slightly modified it for epi 5 server.

Making Above Made Server into 562 one

Required Files
Zoneagent 562 (Press a like and give Reputation To him plz)
LoginAgent (Press a like and give Reputation To him plz)

Place the above files/folders in the D: A3Server folder
Remember Before copying the folder to the A3server directory Rename the folder to loginagent 562 and Zoneagent 562

After that open the Zoneagent folder and edit the zoneagent.ini with your Favorite notepad editor as follows
[STARTUP]
APPNAME=ZONEAGENT
SERVERID=1
AGENTID=1
IP=127.0.0.1
PORT=3300

[ZONESERVER]
COUNT=3

#ACCOUNT SERVER
ID0=255
IP0=127.0.0.1
PORT0=5589


#ZONE SERVER
ID1=0
IP1=127.0.0.1
PORT1=7568

#Battle Server
ID2=3
IP2=127.0.0.1
PORT2=6999

;ID3=1
;IP3=127.0.0.1
;PORT3=6999

;ID4=3
;IP4=127.0.0.1
;PORT4=6999

#ID5=4
#IP5=127.0.0.1
#PORT5=6699

[LOGINSERVER]
IP=127.0.0.1
PORT=3200
Now the two zones are set for the server one for 219 client to connect and another for 562 client to connect

Next we have to configure Loginagent to accept the client and do further operations

open the Loginagent folder in A3Server directory and open the loginagent.ini with your Favorite notepad editor and edit as Follows
;//////////////////////////////////////////////////////////////////////////////////////////
;// Login Agent //
;////////////////////////////////////////////////////////////////////////////////////////
[VersionInfo]

HighVersion = 600 ;//CurrVersion <= HighVersion
LowVersion = 100 ;//CurrVersion > LowVersion


[LoginAgent] ;//tcp

IPADDR = 127.0.0.1
PORT = 8811

IO_MODE = 1 ;// iocp = 1, block = -1

APPNAME = LOGINAGENT
AGENTID = 1

[LoginServer] ;//tcp

IPADDR = 127.0.0.1
PORT = 3210

IO_MODE = -1 ;// iocp = 1, block = -1

[LOG_FILE] ;//log set

GS_LOGFILE_NAME = ./LogFile/gs_log
LC_LOGFILE_NAME = ./LogFile/lc_log
DB_LOGFILE_NAME = ./LogFile/db_log
MAINPROCESS_LOGFILE_NAME = ./LogFile/mp_log
After that open the Zoneagent 562 folder and edit the svrinfo.ini with your Favorite notepad editor as follows
[STARTUP]
APPNAME=ZONEAGENT
SERVERID=0
AGENTID=0

IP=180.151.100.3
PORT=9866

[SVRINFO]
SVRNAME = your sql server name
SVRIP =127.0.0.1
DBID = sa
DBPASS = sa pass

[ZONESERVER]
COUNT=3

ACCOUNT SERVER
ID0=255
IP0=127.0.0.1
PORT0=5589

ZONE SERVER
ID1=0
IP1=127.0.0.1
PORT1=7568

Battle Server
ID2=3
IP2=127.0.0.1
PORT2=6699

#ID3=2
#IP3=127.0.0.1
#PORT3=6999

#ID4=3
#IP4=127.0.0.1
#PORT4=6999

#ID5=4
#IP5=127.0.0.1
#PORT5=6699

[LOGINSERVER]
IP=127.0.0.1
PORT=3200
Zoneagent 562 is configured to accept connections We have to Configure to Loginagent to connect the client

open the Loginagent 562 folder in A3Server directory and open the loginagent.ini with your Favorite notepad editor and edit as Follows
[STARTUP]
APPNAME=LOGINAGENT
AGENTID=0
LISTENPORT=3550

[LOGIN_SERVER]
IP=127.0.0.1
PORT=3210
Important Notice
There are some bugs in server files so After setting up the server.next thing for you is to understand the server and its working.So you should try to know each and everything about server and there are people here in the forum who are very likely to help you.
Please Dont Respond to people Asking for buying your files.I have personaly have the people asking for 562 files.Instead of wasting Money Waste some time and Learn about server.I/We are not here to Make an earning out of an game.We are just an enthusiastic gamers Who are here to Just trying continue the Legacy of Art Alive Attraction

Security Flaws
The server files which are released have some security flaw in them and can be harmfull to any lan or Public server so some of our Netizens have pointed them out and Made a thread and tutorial to solve it
here is the link to them


Read more ...

ODBC Setup A3 Online

[GUIDE] RUN SERVER IN WINDOWS 7 (odbc setup)
It has been more 5 years since i worked on a3. However i was helping my friend with some ollydbg work for his private server and tried to setup BDE on my win7 64 bit system and experienced a few problems and found out that many people are having trouble with the same. So herez a guide on how to run a3 server on ur win7 64 bit edition. I will try my best to add in everything. Please dont ask for further help as this guide itself is self explanatory.

Before trying to raise a proper server there are a few things that you need to know..

The Borland Database Engine that a3 uses was created before windows 7 64 bit editions and thus the game does not know where to look for them. ( installation directories ).

The installation paths are different in 64 and 32 bit machines
for example.. for a 32 bit system it is C:\Program files
for a 64 bit it is c:\Program Files (x86)

So when BDE installs, it goes to (x86) and our reg file doesnt read them as they are traditionally made to work under 32 bit. So if you if some tweaks you can achieve success. But i wont be covering how to change installation locations.. However i am going to show u how to create your ODBCs using 64 bit and BDE without changing the path of installation.

STEPS:

1. Install BDE for win 7 from here..
BDEInfoSetup

2. Install your BDE and make sure to keep in mind where u installed it ( default is C:\Program Files ( x86)\BDE blah blah blah... In my case it is C:\Program Files (x86)\Borland\Common Files\BDE
3. After successfully setting up ur server databases and other stuff thats involved upto adding your BDE, you follow the below given instructions to make ur DB_ports ( 7770 8880 9990 ) work..

4. Go to ur Borland Database Engine folder in my case it is
C:\Program Files (x86)\Borland\Common Files\BDE
and open BDE ADMIN.

5. Go to objects and select ODBC ADMINISTRATOR and select SYSTEM DSN.
6. Click ADD and go to SQL SERVER, and click finish. a small window will appear that says Create a New Data Source to SQL Server..
7. In name put in A3ItemEvent in Server add in your server name just click the drop down and your can find yours.
8. Now click next and choose the 2nd option. Next is u type in ur sa and password and click next
9. Change the Default database to FriendDB and click next
10. Click next, next and finish it.. Do the same process for the following

A3Friend = FriendDB
A3RcvResult = A3ItemEvent
A3SerialList = A3ItemEvent
ASD = ASD
EventA3 = ASD
FriendDB = FriendDB
HSDB = HSDB
LETTERDB = ASD
LocalServer = ASD
Login202 = ASD
NEWASD = ASD

After finishing go to d:\a3server\DB_PORTS ( or whatever just go to ur db ports 7770 8880 9990 and start them and see what happens )...

Please pm in you need any help.. Like for more guides on hex\ollydbg for a3.

Added screens
mav3r1cksandy
Ragezone
Read more ...

GM Color Messages A3 Online

Changing color of server messages and GM Shouts

Guyz I found the strings which are responsible for the color of Client side messages for GM shouts and server messages. Offset b3cc0 the strings from 03 to 05 represent color for server messages, Offset b3d20 strings from 06 to 08 for GM shouts and offset 148720 strings from 0d to 0e are for gm shouts and server messages color in chat window.
But before u start editing better backup your copy of A3Client.exe

ash.blackdevil
Ragezone
Read more ...

Change Character Name A3 Online

Changing name of a character

1. Get the username of the character whose name has to be changed.
Ex : kar
 2. Find the decimal ASCII equivalent of each letter in the username from www.asciitable.com, make its string with dot as letter divider and add .acl at the end of the string
Ex: k = 107, a = 97, r = 114 so my final string will be         107.97.114.acl
3. Search this string inside ACCOUNT folder which is usually present inside a3server folder and make a backup copy of this file in case you edit it wrong.

4. Open the file in an Hex editor and change the name of the character (Either replace the letters in the name of character or add after it. Do not go to add anythin before the character name!)

5. Change the name in charac0 table in ASD database! For simplicity you can execute this query
update charac0 set c_id = 'new_char_name' where c_id = 'old_char_name'
NOTE: By changing the character name, the character will be disbanded from KH, friends list will be empty and mercinery of the character may not get displayed!

cyberinferno
Ragezone
Read more ...

GM Shouts A3 Online

How to make GM shouts , a different approach
According to various posts in RZ , GMshouts can be enabled, but their drawback is that GM has to be logged in in order for shouts to appear. So we need to have a pc logged in all the time, and we also cause some additional "spam" besides the already existing "welcome to our A3 server".

So , why not just change that message while the server is running and let our server display it every 60 seconds.

How are we going to do this?

Here is a short video tutorial:
Here is our hack_me code:
char* hackme = "Hack Me Dude";

 cout << "Press any key when hacked" << endl;
 system("PAUSE");

 while(true)
 {
  cout << "hackme string now is (Press Ctrl-C to exit): " << hackme << endl;
  
  Sleep(10000);

 }
 return 0;
This example allows us to hack it before and after it starts its operation. It's up to us to decide.

All we have to do now is write a new proggy and change the "hack me dude" value.

Here it is:

ATTENTION: example is very simple without any error checking etc. just for the purposes of this guide.
int pid;
HANDLE hProcess = NULL;

LPCVOID msg = "ChrisDeGrece";

cout << "Enter Zoneserver process ID : ";
cin >> pid;

hProcess = OpenProcess(PROCESS_ALL_ACCESS,FALSE, pid);

//We found this address using OllyDBG remember?
DWORD  dwAddr = 0x01232114;

DWORD oldProtect = 0;
DWORD numRead = 0;
VirtualProtectEx( hProcess, (LPVOID)dwAddr, 13, PAGE_EXECUTE_READWRITE, &oldProtect );
 
if (WriteProcessMemory(hProcess,(LPVOID)dwAddr,msg ,13,NULL))
 {
  cout << "Gotcha" << endl;
  cout << "Now enter game and see";
 } else {
  cout << "Failed!" << endl;
 }

VirtualProtectEx( hProcess, (LPVOID)dwAddr, 13, oldProtect, NULL ); 
 
system("PAUSE");
return 0;
We connect to the process using "OpenProcess"

We set the protection level to read_write

We write our own string in memory

We set protection as it was.

So now you can find your "welcome to my a3 server" string and change it every 60 seconds. You will get a GM shouts like result.

chrissdegrece
Ragezone
Read more ...