dpj

Administrators
  • Content Count

    2565
  • Joined

  • Last visited

  • Days Won

    156

dpj last won the day on June 5

dpj had the most liked content!

Community Reputation

350 Excellent

About dpj

  • Rank
    CoD4X developer

Recent Profile Visitors

11224 profile views
  1. dpj

    Http Plugin

    alexc posted the link to the d-apt one post ahead, it should contain libphobos
  2. in case of the server it's not pretty, but doesn't really matter. 90% of server hosters use linux and if anyone is worried about their system they can just containerize it.
  3. are you doing this from your home network? 192.168.x.x is a local IPv4, do you have a public IPv4? depending on your ISP you might not. many ISPs nowadays use CGNAT for IPv4 and only hand out a public IPv6. incoming connections might also just get blocked by the ISP, maybe also by a firewall on your own system.
  4. the main and zone folders can be found in your cod4 game installation.
  5. usually happens if you visited a malicious or badly configured server that changed your stats files you can either create a new profile, or visit a server that unlocks all weapons for your profile. i recently saw this post for it https://cod4x.me/index.php?/forums/topic/3397-c4s-unlock-all-server/ its always good to backup your profile .. just in case.
  6. "External source address" needs to stay empty check if "Internal Host" is equal to the ip address of your pc (like smiley said, it may change when the router is restarted) you can check if your port is reachable with for example https://www.yougetsignal.com/tools/open-ports/ it will show if the cod4 server is running
  7. https://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html3.5. Installing and Using a Shared Library unlike windows, linux does not check the working directory for libraries typically, unless you tell it to. that's also where my example from above comes in again. it shows the basic concepts. now with a tiny change: rm main gcc -c -fPIC foobar.c -o foobar.o gcc -shared -fPIC foobar.o -o libfoobar.so gcc -c main.c -o main.o # gcc main.o ./libfoobar.so -o main gcc main.o -lfoobar -L. -o main LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH ./main not defining the symbol at all leads to a warning for implicit declaration. the correct place to define it would probably be "foobar.h" as the function belongs to the foobar library, not the main program.
  8. i assume you're running the server on your personal computer and your friend wants to connect over the internet to your server. are you able to connect to your server from the same pc? (just to make sure it's actually running) did you give your public ip address to your friend? (https://www.whatsmyip.org/) it might be necessary to set net_ip to your public ip address (+set net_ip xxx.xxx.xxx.xxx)
  9. a minimal example to build a shared library: // main.c extern void testfun(); void main() { testfun(); } // foobar.c #include <stdio.h> void testfun() { printf("testfun"); } // build.sh rm main gcc -c -fPIC foobar.c -o foobar.o gcc -shared -fPIC foobar.o -o libfoobar.so gcc -c main.c -o main.o gcc main.o ./libfoobar.so -o main ./main
  10. main.c needs to know about foo_bar_test() function. declare it in main.c as extern. that's usually done in a header file. extern void foo_bar_test()
  11. not sure where the issue is, those lines look ok. did you export the function? how does the code look?
  12. dpj

    Http Plugin

    haven't tested if it's actually running yet, but i was able to compile it without issues. first install the dlang compiler and dub build system (https://dlang.org/download.html); for ubuntu/debian: sudo wget https://netcologne.dl.sourceforge.net/project/d-apt/files/d-apt.list -O /etc/apt/sources.list.d/d-apt.list sudo apt-get update --allow-insecure-repositories sudo apt-get -y --allow-unauthenticated install --reinstall d-apt-keyring sudo apt-get update && sudo apt-get install dmd-compiler dub you'll also need the phobos library sudo apt install libphobos2-dev:i386 clone the plugin repository git clone https://github.com/callofduty4x/cod4x_plugin_http.git then compile the plugin with dub --arch=x86 --build=release now you should have "libcod4x_http_plugin.so"
  13. dpj

    SetCall and SetJump

    the function places the respective assembly opcode and parameter at the given address. you won't be able to use this successfully unless you manage the stack and cpu registers properly. whatever you want to do, there is probably a much simpler way of doing it.
  14. dpj

    Http Plugin

    https://github.com/callofduty4x/cod4x_plugin_http/ do you mean that one? i guess i could get it working for you, but it only works for linux as far as i remember
  15. it's very easy to alter hardpoints. check the code below. all you need to do is change the condition when giveHardpoint() is executed. https://github.com/D4edalus/CoD4MW/blob/master/raw/maps/mp/gametypes/_hardpoints.gsc#L842