• Content Count

  • Joined

  • Last visited

  • Days Won


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

11096 profile views
  1. 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.
  2. "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
  3. 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.
  4. 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)
  5. 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
  6. 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()
  7. not sure where the issue is, those lines look ok. did you export the function? how does the code look?
  8. 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"
  9. 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.
  10. 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
  11. 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
  12. That's not a menu, it's the killfeed. You'll see the text output of the command in the console. We dont provide any graphical in-game menus for server administration.
  13. as i said, open the console. shift+^ or shift+~ depending on your keyboard https://wiki.zeroy.com/index.php?title=Call_of_Duty_4:_Console_usage
  14. to get started write $cmdlist into chat and check the console for output don't think the commands are documented, but you can find them in the sourcecode https://github.com/callofduty4x/CoD4x_Server/search?q=Cmd_AddPCommand keep in mind that most commands require to be admin status/power level https://github.com/callofduty4x/CoD4x_Server/blob/202c06a7d6c970d258ecb84184114a726a524f8d/src/sv_auth.c#L637
  15. the checking routine can be found here: https://github.com/callofduty4x/CoD4x_Server/blob/d90c6bb1eaac16e7c4cca309b6b912051ffa4a90/src/sv_client.c#L2056 to my understanding of the code the error doesn't tell us which file is affected. looking at line https://github.com/callofduty4x/CoD4x_Server/blob/d90c6bb1eaac16e7c4cca309b6b912051ffa4a90/src/sv_client.c#L2132 asdf the algorithm just counts mismatches between all pairs of client and server checksums. if the error is only appearing when a custom map is loaded, i would expect the mismatch to be within the files of that map. is it reproducable, does the server always show the same behaviour when switching to said map? if we suspect the map, have you tried deleting and redownloading it from your server? anyways, if i understand the last lines from the quote correctly, this only happened once when you joined while the server was switching maps? since the server is running mainly single threaded, i wouldn't expect a concurrency error from switching maps, but who knows