Jump to content
  • 0
Sign in to follow this  
Alphoccio

Fire Wall Skill

Question

Hello there..  :)

 

I find that RO has implement too many Skills but some of it is getting less it's importance in game.

so I just want to make some boost of some skills.

one of it is how do I widen the Skill Fire Wall?

 

Let say from default 3 x 2 Cells to 6 x 2 Cells?

I've read the wiki for quite some time now regarding Skills modifications..

and I believe its in Skill.c but I don't want to risk.

 

Hoping for your assistance.   :meow:

 

Share this post


Link to post
Share on other sites

7 answers to this question

Recommended Posts

  • 0

this is the whole code..

 

skill->firewall_unit_pos = pos;for (i=0;i<8;i++) {  if (i&1) {   skill->unit_layout[pos].count = 5;   if (i&0x2) {    int dx[] = {-1,-1, 0, 0, 1};    int dy[] = { 1, 0, 0,-1,-1};    memcpy(skill->unit_layout[pos].dx,dx,sizeof(dx));    memcpy(skill->unit_layout[pos].dy,dy,sizeof(dy));   } else {    int dx[] = { 1, 1 ,0, 0,-1};    int dy[] = { 1, 0, 0,-1,-1};    memcpy(skill->unit_layout[pos].dx,dx,sizeof(dx));    memcpy(skill->unit_layout[pos].dy,dy,sizeof(dy));   }  } else {   skill->unit_layout[pos].count = 3;   if (i%4==0) {    int dx[] = {-1, 0, 1};    int dy[] = { 0, 0, 0};    memcpy(skill->unit_layout[pos].dx,dx,sizeof(dx));    memcpy(skill->unit_layout[pos].dy,dy,sizeof(dy));   } else {    int dx[] = { 0, 0, 0};    int dy[] = {-1, 0, 1};    memcpy(skill->unit_layout[pos].dx,dx,sizeof(dx));    memcpy(skill->unit_layout[pos].dy,dy,sizeof(dy));   }  }  pos++;} 

ok those coordinates are patterns..

and as I said before you need to plot it,... into a Cartesian plane you can see the pattern..

for example

2eb9x7b.png

 

I hope after seeing this you will get the idea...

Word of the day: A good programmer is a good mathematician...:D

 

 

:meow:

Share this post


Link to post
Share on other sites
  • 0

@skill.c under 'void skill_init_unit_layout (void)'

then find 'skill->firewall_unit_pos' and below it you can see the layout..just add another xy point...

 

:meow:

Share this post


Link to post
Share on other sites
  • 0

@skill.c under 'void skill_init_unit_layout (void)'

then find 'skill->firewall_unit_pos' and below it you can see the layout..just add another xy point...

 

:meow:

 

 

Hi there malufett,

 

I tried to understand what you want me to do.. but I think I'm not yet there with my programming skills doing the basics.. I've studied Java some Web PL. but not so C++.   :sry:    but I'm planning to learn it. 

 

please can you edit the codes below? cause I might do it the wrong way.

Thank you so much for your time.  :meow:

// firewall and icewall have 8 layouts (direction-dependent)	skill->firewall_unit_pos = pos;	for (i=0;i<8;i++) {		if (i&1) {			skill->unit_layout[pos].count = 5;			if (i&0x2) {				int dx[] = {-1,-1, 0, 0, 1};				int dy[] = { 1, 0, 0,-1,-1};				memcpy(skill->unit_layout[pos].dx,dx,sizeof(dx));				memcpy(skill->unit_layout[pos].dy,dy,sizeof(dy));			} else {				int dx[] = { 1, 1 ,0, 0,-1};				int dy[] = { 1, 0, 0,-1,-1};				memcpy(skill->unit_layout[pos].dx,dx,sizeof(dx));				memcpy(skill->unit_layout[pos].dy,dy,sizeof(dy));			}		} else {			skill->unit_layout[pos].count = 3;			if (i%4==0) {				int dx[] = {-1, 0, 1};				int dy[] = { 0, 0, 0};				memcpy(skill->unit_layout[pos].dx,dx,sizeof(dx));				memcpy(skill->unit_layout[pos].dy,dy,sizeof(dy));			} else {				int dx[] = { 0, 0, 0};				int dy[] = {-1, 0, 1};				memcpy(skill->unit_layout[pos].dx,dx,sizeof(dx));				memcpy(skill->unit_layout[pos].dy,dy,sizeof(dy));			}		}		pos++;
Edited by Alphoccio

Share this post


Link to post
Share on other sites
  • 0

 

I've studied Java some Web PL. but not so C++. :sry:   but I'm planning to learn it.

nah...all programming language are the same..as long as you understand how to do 'if else' you can survive as a programmer..

 

 

please can you edit the codes below? cause I might do it the wrong way.

nah..I don't want...if you want to learn...you must experience to fail..so do trial and error..anyway here is a hint..

skill->unit_layout[pos].count = 5; // number of points    if (i&0x2) {   // here are x points and y points having this plot it and you can see something      int dx[] = {-1,-1, 0, 0, 1};       int dy[] = { 1, 0, 0,-1,-1};      memcpy(skill->unit_layout[pos].dx,dx,sizeof(dx)); // just copying of array dx to skill->unit_layout      memcpy(skill->unit_layout[pos].dy,dy,sizeof(dy)); // just copying of array dy to skill->unit_layout

:meow:

Share this post


Link to post
Share on other sites
  • 0

 

 

I've studied Java some Web PL. but not so C++. :sry:   but I'm planning to learn it.

nah...all programming language are the same..as long as you understand how to do 'if else' you can survive as a programmer..

 

please can you edit the codes below? cause I might do it the wrong way.

nah..I don't want...if you want to learn...you must experience to fail..so do trial and error..anyway here is a hint..

skill->unit_layout[pos].count = 5; // number of points    if (i&0x2) {   // here are x points and y points having this plot it and you can see something      int dx[] = {-1,-1, 0, 0, 1};       int dy[] = { 1, 0, 0,-1,-1};      memcpy(skill->unit_layout[pos].dx,dx,sizeof(dx)); // just copying of array dx to skill->unit_layout      memcpy(skill->unit_layout[pos].dy,dy,sizeof(dy)); // just copying of array dy to skill->unit_layout

:meow:

 

 

 

@malufett oh I admit it.. I can't figure it out.. what do you mean " just add another xy point..." ?

 

I did these changes and that...  kindly see..

skill->firewall_unit_pos = pos;	for (i=0;i<9;i++) {		if (i&1) {			skill->unit_layout[pos].count = 8;						// "AE_NOTE-Default: 5 "			if (i&0x2) {				int dx[] = {-1,-1, 0, 0, 0, 0, 0, 1};				int dy[] = { 1, 0, 0, 0, 0, 0,-1,-1};				memcpy(skill->unit_layout[pos].dx,dx,sizeof(dx));				memcpy(skill->unit_layout[pos].dy,dy,sizeof(dy));			} else {				int dx[] = { 1, 1 ,0, 0, 0, 0, 0,-1};				int dy[] = { 1, 0, 0, 0, 0, 0,-1,-1};				memcpy(skill->unit_layout[pos].dx,dx,sizeof(dx));				memcpy(skill->unit_layout[pos].dy,dy,sizeof(dy));			}

And it's a must to Re-compiled the server every time I make changes right???  :p_conf:  but sadly nothing happens... it's still the same.

I have no idea on how & what are those {-1,-1, 0, 0, 1 }; values stands for?

 

btw, thank you so much for checking out this topic.   :gawi:

Share this post


Link to post
Share on other sites
  • 0

this is the whole code..

 

skill->firewall_unit_pos = pos;for (i=0;i<8;i++) {  if (i&1) {   skill->unit_layout[pos].count = 5;   if (i&0x2) {    int dx[] = {-1,-1, 0, 0, 1};    int dy[] = { 1, 0, 0,-1,-1};    memcpy(skill->unit_layout[pos].dx,dx,sizeof(dx));    memcpy(skill->unit_layout[pos].dy,dy,sizeof(dy));   } else {    int dx[] = { 1, 1 ,0, 0,-1};    int dy[] = { 1, 0, 0,-1,-1};    memcpy(skill->unit_layout[pos].dx,dx,sizeof(dx));    memcpy(skill->unit_layout[pos].dy,dy,sizeof(dy));   }  } else {   skill->unit_layout[pos].count = 3;   if (i%4==0) {    int dx[] = {-1, 0, 1};    int dy[] = { 0, 0, 0};    memcpy(skill->unit_layout[pos].dx,dx,sizeof(dx));    memcpy(skill->unit_layout[pos].dy,dy,sizeof(dy));   } else {    int dx[] = { 0, 0, 0};    int dy[] = {-1, 0, 1};    memcpy(skill->unit_layout[pos].dx,dx,sizeof(dx));    memcpy(skill->unit_layout[pos].dy,dy,sizeof(dy));   }  }  pos++;} 

ok those coordinates are patterns..

and as I said before you need to plot it,... into a Cartesian plane you can see the pattern..

for example

2eb9x7b.png

 

I hope after seeing this you will get the idea...

Word of the day: A good programmer is a good mathematician... :D

 

 

:meow:

 

Good day malufett,

 

After many hours &  a night of mind processing while sleeping.. haha  :heh:

I just wanna say Thank you so much! so kind of yours. 

I got it working now.. though I'm still trying to understand the Structure of the program and how the codes Flow.. I want to learn more of it. 

well, though I'm not so good in Arrays.. we're in Java 2 Object Oriented and we tackled basic Arrays and now it made me realize its importance.

for example what if I want it to be in Circle shape...? and so on...  :rolleyes:

oh I just hope this wouldn't be the last.. again thank you for your assistance.

 

Keep it up and have a great day to you.  :D

Share this post


Link to post
Share on other sites
  • 0

 

Good day malufett,

 

After many hours &  a night of mind processing while sleeping.. haha  :heh:

I just wanna say Thank you so much! so kind of yours.

I got it working now.. though I'm still trying to understand the Structure of the program and how the codes Flow.. I want to learn more of it.

well, though I'm not so good in Arrays.. we're in Java 2 Object Oriented and we tackled basic Arrays and now it made me realize its importance.

for example what if I want it to be in Circle shape...? and so on...  :rolleyes:

oh I just hope this wouldn't be the last.. again thank you for your assistance.

 

Keep it up and have a great day to you.  :D

 

good for you...and hope you understand why I'm getting hard on you..

cause you need it and I hate spoon feeding..:P

 

 

:meow:

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.