logo logo

 Back to main page

The NWNX Community Forum

 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 
 
Some new plugins.
Goto page 1, 2, 3, 4  Next
 
Post new topic   Reply to topic    nwnx.org Forum Index -> Linux development
View previous topic :: View next topic  
Author Message
leo_x



Joined: 25 Aug 2010
Posts: 75

PostPosted: Sat Jun 18, 2011 14:13    Post subject: Some new plugins. Reply with quote

Update to reflect current status.

NOTE: I have modified some things in the core to simplify a few things, so these likely will not work with a nwnx2.so built from the master nwnx2 repository.

leo_x wrote:
Heya,

I should have updated this thread as it's obsolete. My NWNX branch with all my stuff is here: https://github.com/jd28/nwnx2-linux. You will need to build them yourself and, also, I am using c++11 features so you will likely need GCC 4.6+. I don't think I've used anything from GCC 4.7, but maybe I did. Also most of them support only the cmake build system.

One thing I have not done, because I really don't use NWScript much anymore, is create NWSCript interfaces to some of these plugins.

nwnx_levels, nwnx_haks remain basically the same, but cleaned up a bit.

I am ditching, or have ditched, nwnx_weapons, nwnx_defense, and nwnx_specattack in favor of a new plugin I'm working on nwnx_combat which (almost) completely replaces the NWN combat engine. There's a (incomplete) readme, a TODO there if you're interested. I would not use it for a production server yet (it also doesn't support some of the things NWN does, viz effects vs Race/etc), but it's getting very near beta. It allows vastly more tweaking/modification possibility, but at the price of having to use C++ to do it.

nwnx_effects has been improved. It opens up DURATION_TYPE_ITEM and DURATION_TYPE_INNATE for ApplyEffectOnObject in NWScript, which can be very handy even if you didn't want to do new effect types.

The helmet hiding thing from nwnx_tastuff was moved into a new nwnx_items plugin. That's pretty much all it does right now. I was also mucking about with rendering item property strings server side (because I dislike all the TLK/2da rigmarole of adding new Item properties) and overriding IRL stuff (because I do not like the gold value system).

There is also a new scripting engine plugin (kind of like nwnx_ruby/lua/jvm, but with much more aggressive integration): nwnx_solstice and a lua library that I am working on for fun to use with it: Solstice for the docs. If you don't like Lua you won't care about this, but I think it's vastly nicer than NWScript. I mention this only for the curious, since right now it would take some work to get it setup right.

Anyway, if you have any questions or feedback, feel free to send me a message. I still have a backup of the old versions mentioned above, if you want it.

best,
jmd aka leo_x


Last edited by leo_x on Wed Aug 07, 2013 10:06; edited 3 times in total
Back to top
View user's profile Send private message
Baaleos



Joined: 02 Sep 2007
Posts: 830

PostPosted: Mon Jun 20, 2011 14:37    Post subject: Reply with quote

does the nwnx_hak's

allow for adding of a server-side hak, and NOT requiring the player to have a matching hak?


Also,
would you in theory, be able to hide all of the CEP2.3 haks using this, and then it would allow players who do not have cep2.3 to enter your server using the fallback tlk?


What effect would it have if the players enter an area with placeables from a hak that they do not have?
Back to top
View user's profile Send private message
leo_x



Joined: 25 Aug 2010
Posts: 75

PostPosted: Mon Jun 20, 2011 15:35    Post subject: Reply with quote

Baaleos wrote:
does the nwnx_hak's

allow for adding of a server-side hak, and NOT requiring the player to have a matching hak?


Also,
would you in theory, be able to hide all of the CEP2.3 haks using this, and then it would allow players who do not have cep2.3 to enter your server using the fallback tlk?


What effect would it have if the players enter an area with placeables from a hak that they do not have?


yes, the int nLevel is just any arbitrary number. Player logs in you, say, get some database variable that tells what their 'hak level' is (different haks can be set to different 'hak levels') or not and that will decide whether the hak is included in the module info message or not. If you don't check that at all, any hak that was hidden would be invisible to any player logging in and they could log in without it. my server is The Awakening CEP23 in PW Action, you could login and see how i use it if you like.

Yes, you could do that, I suppose, and just not set a fallback tlk. so they didn't need anything to login. Not sure it would be a good idea given the way CEP is.

It seemed missing models simply don't appear, missing items look like sacks, missing tilesets cause a client crash and I'd assume any tileset modified by CEP would cause it.
Back to top
View user's profile Send private message
Baaleos



Joined: 02 Sep 2007
Posts: 830

PostPosted: Mon Jun 20, 2011 15:58    Post subject: Reply with quote

im gonna push for this to be ported to windows... as it sounds very useful.

It expands the 16k limit per hak to unlimited, cause it now allows for unlimited haks without being limited to the cep_custom.hak
Back to top
View user's profile Send private message
leo_x



Joined: 25 Aug 2010
Posts: 75

PostPosted: Mon Jun 20, 2011 17:56    Post subject: Reply with quote

Baaleos wrote:
im gonna push for this to be ported to windows... as it sounds very useful.

It expands the 16k limit per hak to unlimited, cause it now allows for unlimited haks without being limited to the cep_custom.hak


i hope someone takes the task, i'd be glad after all the years of using things to have finally contributed a bit back.

yea you could use it for that, i do.

i refactored it a bit to get rid of some grossness.
Back to top
View user's profile Send private message
Paul R



Joined: 17 Apr 2009
Posts: 42

PostPosted: Tue Jul 05, 2011 23:23    Post subject: Reply with quote

Hi,

I got a copy of the git tonight and tried to build it, the configure ran fine but the make failed with the following errors when building the plugins/haks/

Code:
CExoString2.cpp: In member function ‚bool CExoString2::operator!=(const CExoString2&)‚:
CExoString2.cpp:82: error: suggest parentheses around && within ||
CExoString2.cpp: In member function ‚bool CExoString2::operator!=(const char*)‚:
CExoString2.cpp:95: error: suggest parentheses around && within ||
CExoString2.cpp: In member function ‚bool CExoString2::operator==(const CExoString2&)‚:
CExoString2.cpp:102: error: suggest parentheses around && within ||
CExoString2.cpp: In member function ‚bool CExoString2::operator==(const char&)‚:
CExoString2.cpp:114: error: suggest parentheses around && within ||
make[1]: *** [CExoString2.o] Error 1


Is there anything you want me to check or you need details of (GCC version etc...)?

Cheers,

Paul
_________________
oops
Back to top
View user's profile Send private message
leo_x



Joined: 25 Aug 2010
Posts: 75

PostPosted: Wed Jul 06, 2011 15:30    Post subject: Reply with quote

Heya,

It's mainly a stylistic complaint.

See the changes on those lines (82, 95, 102, 114) here:
https://github.com/jd28/nwnx/blob/master/plugins/haks/CExoString2.cpp

that should resolve that issue.
Back to top
View user's profile Send private message
Zunath



Joined: 06 Jul 2006
Posts: 183

PostPosted: Tue Jul 19, 2011 21:03    Post subject: Reply with quote

NWNX_Haks sounds pretty impressive. Can't wait to try these out!
Back to top
View user's profile Send private message
Zunath



Joined: 06 Jul 2006
Posts: 183

PostPosted: Thu Jul 21, 2011 16:20    Post subject: Reply with quote

I'm rather new to Linux (reinstalled it to test out this plugin and a number of others) so I apologize if this is a really simple question.

There's no .so file from what I can tell so I'm assuming I have to compile it. How exactly is that done?

Thanks.
Back to top
View user's profile Send private message
leo_x



Joined: 25 Aug 2010
Posts: 75

PostPosted: Thu Jul 21, 2011 21:10    Post subject: Reply with quote

hello there!

i'm redoing my dev box, so i don't have an so's handy. on the githup page https://github.com/jd28/nwnx there is a download button. Click that then download the tar.gz onto your linux box. from there it should be no different then the instructions for nwnx_easy: http://www.nwnx.org/phpBB2/viewtopic.php?t=1109
however in this case you probably _don't_ want to move everything to your nwn directory, only the nwnx_haks.so that you want to use.

basic steps would be
-- download .tar.gz
-- find it or copy it to you linux server.
-- go to the folder the .tar.gz is in.
-- Use: tar -zxvf <WHATEVER>.tar.gz
-- cd <WHATEVER>
-- ./install.sh
-- copy the so that you want into your nwn folder

where <WHATEVER> is the name of the file excluding ".tar.gz"
Back to top
View user's profile Send private message
Zunath



Joined: 06 Jul 2006
Posts: 183

PostPosted: Thu Jul 21, 2011 22:02    Post subject: Reply with quote

Thanks so much for the info. The download link wasn't working for me earlier but it seems that it's just fine now. I believe it's compiled. Can't wait to try it out!

And in case anyone wants them, here's the .so files:

Link: Download
Back to top
View user's profile Send private message
Zunath



Joined: 06 Jul 2006
Posts: 183

PostPosted: Thu Jul 21, 2011 22:42    Post subject: Reply with quote

I seem to be having a Segmentation fault error every time I join the server.

Maybe I'm using the functions incorrectly though. I've got this test code on the OnLoad event of my module:

Code:


    // Test stuff
    DumpHakList();
    SetHakHidden("reo_top_v5", 1);
    SetHakHidden("reo_tiles_1", 1);
    SetHakHidden("mdrn20_cloth", 1);
    SetHakHidden("mdrn20_creature", 1);
    SetHakHidden("mdrn20_head", 1);
    SetHakHidden("mdrn20_item", 1);
    SetHakHidden("mdrn20_load", 1);
    SetHakHidden("mdrn20_placeable", 1);
    SetHakHidden("mdrn20_portrait", 1);
    SetHakHidden("mdrn20_tile", 1);
    SetHakHidden("cep2_core6", 1);
    SetHakHidden("cep2_core5", 1);
    SetHakHidden("cep2_core4", 1);
    SetHakHidden("cep2_core3", 1);
    SetHakHidden("cep2_core2", 1);
    SetHakHidden("cep2_core1", 1);
    SetHakHidden("cep2_core0", 1);
    SetHakHidden("cep2_add_sb_v1", 1);

    //SetFallBackTLK("");



I've tried it both with and without DumpHakList and with and without SetFallBackTLK to an empty string.

But like I said, it's probably me messing something up.
Back to top
View user's profile Send private message
leo_x



Joined: 25 Aug 2010
Posts: 75

PostPosted: Thu Jul 21, 2011 23:27    Post subject: Reply with quote

hmm. not sure. if you go to your nwn folder and run the command::
gdb nwserver core.<WHATEVER>

where <WHATEVER> is some numbers associate with a core file that's in the nwn directory. you can run the command: ls -l core* to see them

once you're in gdb you can type: backtrace, which will give some idea about where the issue is occurring


Last edited by leo_x on Thu Jul 21, 2011 23:41; edited 3 times in total
Back to top
View user's profile Send private message
Zunath



Joined: 06 Jul 2006
Posts: 183

PostPosted: Thu Jul 21, 2011 23:37    Post subject: Reply with quote

I tried it without DumpHakList even in there and still got the same error.

Not sure what you mean by core dump, sorry. There's nothing in the logs either - is there some other info I can get to help you?
Back to top
View user's profile Send private message
leo_x



Joined: 25 Aug 2010
Posts: 75

PostPosted: Thu Jul 21, 2011 23:40    Post subject: Reply with quote

sorry, i realized it wasn't very clear so i edited my previous message...
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    nwnx.org Forum Index -> Linux development All times are GMT + 2 Hours
Goto page 1, 2, 3, 4  Next
Page 1 of 4

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group