Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Serge

Pages: [1] 2 3 4 5 6 7 8 ... 103
2
the readme in sergepacker says to have a 'fresh ra2 1.4 exe', i want to install this in dsl. im following the instructions, using a fresh download and unpack for both things nessecary, where do i start in troubleshooting this? it worked for me before on this computer, i think.

Should work on DSL.

Start troubleshooting by showing us a screenshot of your RA2 folder.

3
https://robot-rumble.itch.io/builds

Lovely, thank you.

I'll test it as soon as itch.io's downloads start working again - seems their service is having some issues right now.

Seems itchio/hwcdn was having issues with either my double NAT or my ISP. Had to download (slooowly) while proxying through another network. ( If you want a better CDN, hit me up on DM, that's my line of work :) ).

So, tested this for a few minutes on Gentoo Linux (Kernel 4.14.10), with my integrated Intel HD Graphics 530 (GL 4.5, GLES 3.2) and Intel i7-6700k and 32GB of RAM. I know, the graphics aren't great, but other games work okay at full HD on low graphics (I play Talos Principle on this machine quite a bit, @30FPS).

What works:
 - game launches! full screen only, can't seem to window it (tried alt-enter)
 - 1v1 combat launches
 - botlab launches

What doesn't work:
 - any sort of performance (menus are sluggish, combat view is around 5FPS)
 - smoke (?) particles during combat - they get rendered with a white background
 - building a robot - I get stuck on 'collision mode' selection, when I click any of the buttons I get a textured box but no wireframe and can't advance to next step

Player.log: https://q3k.org/u/9f1843023508c15946e0bd26ef9e4aa8f052a9bb140bf408be46ef58e7423872.log

If you tell me how I can get this resized to a window, I'll get you some screenshots / recordings. Oh, and any chance you could also release a 64-bit Linux build?

Thanks for the Linux build!

4
https://robot-rumble.itch.io/builds

Lovely, thank you.

I'll test it as soon as itch.io's downloads start working again - seems their service is having some issues right now.

5
Can we get Linux builds? I'd like to test this.

6
Real Robotics Discussion / Re: BattleBots 2018 - Discussion Thread
« on: May 12, 2018, 09:02:05 PM »
I really like the new format.

7
Discussion / Re: IMPORTANT: this will save RA2
« on: January 26, 2017, 09:50:17 AM »
Ah, the game uses DirectPlay :/. One one hand - COM is a pain. On the other, I at least don't have to reverse engineer the wire format.

It also does not work under Wine:

Code: [Select]
fixme:dpnet:IDirectPlay8PeerImpl_SetPeerInfo (0xfe0f20)->(0x33f3d4,(nil),(nil),80000000) Semi-stub.
fixme:dpnet:IDirectPlay8PeerImpl_Host (0xfe0f20)->(0x33f3ec,0x72e0b4,1,(nil),(nil),(nil),0): stub

Looks like I'll have to resuscitate the ol' Windows laptop I have somewhere...

8
Discussion / Re: IMPORTANT: this will save RA2
« on: January 21, 2017, 06:11:16 PM »
Looking into the RA2 network layer sounds like an interesting project…

Might give it a shot some day.

9
Contests / Re: VOTE! BOTM Oct 2016
« on: December 04, 2016, 06:28:17 PM »
Hey, did you guys know upurs.us is still a thing?

Aaand it's dead.

10
Modifications / Re: plus.isDebugMode()
« on: October 11, 2016, 02:26:40 PM »
Thanks Serge

Patched it statically to
Code: [Select]
.text:004B9BF0                 or     al, alNow it returns true

Big meh, just crashes the game when trying to play. I suppose it needs extra coding from debug-build to work properly.
https://gametechmods.com/forums/index.php?action=downloads;sa=view;down=288

OffTopic: Also patched in 16-point chassis limit removal statically based on offsets in SergePatcher, can put it up on GTM for you.

The reason it doesn't work is because this function returns a PyObject *, so it should return the global Py_True or another truthy object. Returning a C NULL for None only works because of the way the C API parses a NULL that way. Everything else (including an 0x00000001-FF) will get parsed as a PyObject*, so in the case of an invalid pointer (like 0x1) will crash on dereferencing.

11
Modifications / Re: plus.isDebugMode()
« on: October 06, 2016, 09:15:49 PM »
So, when is it true?

Never. It will always return None.

Code: [Select]
.text:004BC585                 push    offset aIsdebugmode ; "isDebugMode"
.text:004BC58A                 push    offset py_isDebugMode
.text:004BC58F                 mov     ecx, esi
.text:004BC591                 call    sub_4BDF80

[...]

.text:004B9BF0 py_isDebugMode  proc near               ; CODE XREF: sub_57C000+9Cp
.text:004B9BF0                                         ; DATA XREF: sub_4BBA00+B8Ao ...
.text:004B9BF0                 xor     al, al
.text:004B9BF2                 retn
.text:004B9BF2 py_isDebugMode  endp

12
General Support / Re: Batch Compile/Decompile of GMFs
« on: September 15, 2016, 04:00:53 PM »
As the title says, is there any way to batch compile/decompile GMFs? I don't believe either Serge's or Dummy's programs have that function, so this would extend to .bat files, or anything that could automate the process a little.

Both compilers are open source and you could easily modify them to take paths from argv instead.

13
General Support / Re: 3DS max troubleshooting...
« on: September 14, 2016, 06:19:24 PM »
Either provide sample files or a crystal ball that we can use to figure out what's wrong.

14
So I recently bought a few motors off of banggood because they were on sale and I mean hell why not, I've been planning on making a robot for ages. The problem is, I'm using Inventor and I'm really struggling with finding some of the CADs for the offbrand things. Does anyone have any CADs for this:

http://www.banggood.com/4X-Racerstar-2205-BR2205-2300KV-2-4S-Brushless-Motor-2-CW-2-CCW-For-QAV250-ZMR250-260-Multirotor-p-1066837.html

or something similar?

This is a joke, right?




It took me an entirety of 4 minutes to draw this in Solvespace from the drawings given by the site you linked, and I suck at CAD. The only thing that is missing for mechanical use is the vent holes and cable/grommet. Maybe the threading of the holes / shaft if you're feeling fancy.

How do you plan on getting anything done if you're not willing to spend a couple of bloody minutes on basic work?

15
Modifications / Re: Serge's random modding utilities
« on: September 05, 2016, 06:29:44 PM »
Started working on what I for now call `pyra25`. It's basically what pyra2 was, but sprinkled with not-invented-here syndrome and Python 3 compatibility. Hopefully it could be used for wonderful things like bot exchanges or Blender exporters. It's what GMFClass (remember that? :P) would have been if I knew what I was doing 8 years ago.

I'm at the point where I'm experimenting with what kind of API I want to see, and I'm implementing a basic GMF parser. Definition of a GMI node type currently looks as follows:

Code: [Select]
class Material(_NodeType):
    TYPE_NAME = 'MATERIAL'
    TYPE_ID = 0x08

    ref_no = _FieldInt('MATERIAL_REF_NO')
    name = _FieldString('MATERIAL_NAME')
    cls = _FieldString('MATERIAL_CLASS')
    ambient = _FieldInt('MATERIAL_AMBIENT', asciirepr='hex')
    diffuse = _FieldInt('MATERIAL_DIFFUSE', asciirepr='hex')
    specular = _FieldInt('MATERIAL_SPECULAR', asciirepr='hex')
    shine = _FieldFloat('MATERIAL_SHINE')
    shinestrength = _FieldFloat('MATERIAL_SHINESTRENGTH')
    transparency = _FieldFloat('MATERIAL_TRANSPARENCY')
    wiresize = _FieldFloat('MATERIAL_WIRESIZE')
    shading = _FieldInt('MATERIAL_SHADING')
    xp_fallof = _FieldFloat('MATERIAL_XP_FALLOFF')
    selfillum = _FieldFloat('MATERIAL_SELFILLUM')
    fallof = _FieldInt('MATERIAL_FALLOF')
    xp_type = _FieldInt('MATERIAL_XP_TYPE')

    texture_list = _FieldSubnode('TEXTURE_LIST', TextureList, optional=True)
    material_list = _FieldSubnode('MATERIAL_LIST', MaterialList, optional=True)

And the API for loading a binary GMF and iterating over some materials looks like this:

Code: [Select]
with open('/home/q3k/Games/RA2/Robot Arena 2 v1.4/Components/cannon/cannon.gmf', 'rb') as f:
    g = GMI()
    g.from_binary(f)
    print('Scene information:')
    print(g.scene)
    print('Materials:')
    for material in g.material_list.materials:
        print("-> " + str(material))
        if material.texture_list:
            print("   Has textures:")
            for texture in material.texture_list.textures:
                print("   -> " + str(texture))
        else:
            print("   No textures.")
        if material.material_list:
            print("   Has submaterials:")
            for submaterial in material.material_list.materials:
                print("   -> " + str(submaterial))
        else:
            print("   No submaterials.")

That would display:

Code: [Select]
q3k@anathema ~/Projects/pyra25/pyra25 $ python gmf.py
Scene information:
<pyra25.SCENE: SCENE_FILENAME=cannonMapped.max, SCENE_FIRSTFRAME=0, SCENE_LASTFRAME=100...>
Materials:
-> <pyra25.MATERIAL: MATERIAL_REF_NO=0, MATERIAL_NAME=11 - Default, MATERIAL_CLASS=Standard...>
   No textures.
   No submaterials.
-> <pyra25.MATERIAL: MATERIAL_REF_NO=1, MATERIAL_NAME=6 - Default, MATERIAL_CLASS=Standard...>
   Has textures:
   -> <pyra25.TEXTURE: MAP_NAME=Map #10, MAP_CLASS=Bitmap, BITMAP=cannon.tga...>
   No submaterials.
-> <pyra25.MATERIAL: MATERIAL_REF_NO=2, MATERIAL_NAME=5 - Default, MATERIAL_CLASS=Standard...>
   Has textures:
   -> <pyra25.TEXTURE: MAP_NAME=Map #9, MAP_CLASS=Bitmap, BITMAP=cannonball.tga...>
   No submaterials.

No idea when this will be done. I'm at the boring part where I'm going over all node types and implementing them. Nice part is that once this is done, we can hopefully autogenerate some pretty concise documentation on the GMF/GMA file format!

16
Site News and Feedback / Re: GTM is reclining
« on: August 13, 2016, 03:50:03 PM »
words

Eh, she's all right mate. The proof is in the pudding - we're still here a good 13 years after the game's release.

Don't take things too seriously.

17
Modifications / Re: Replacing models in DSL?
« on: August 12, 2016, 02:22:42 PM »
iKa - what is you typical workflow / software stack (a.k.a. can you do/learn Blender)?
errr I mean my typical workflow is cinema 4d, but that can export almost any filetype, and if there are any problems I can always just export to STL and convert it from there.
Well, you always lose _some_ metadata when transferring between different editing software, but fair enough.
…and I don't think STL does texturing, but I imagine there is another decent interchange format between C4D and Blender.

If it uses DX it should be compatible with SweetFX right?
See, you people know better than me. Of course someone made an universal shader injector for DX.

18
Modifications / Re: Replacing models in DSL?
« on: August 10, 2016, 10:57:02 PM »
However I've heard that Serge is working on something new which should allow us to do stuff without 3ds max and import the original components back.
Correct - I was thinking of creating a very crude Blender exporter. iKa - what is you typical workflow / software stack (a.k.a. can you do/learn Blender)?

Is it possible to make all of the sounds have higher bitrates? I know that everything is encoded in wav files meaning theoretically infinite bitrate. but would it change the loading times a lot?
Shouldn't be an issue, experiment around and see what the engine does when fed a higher bitrate wave file. If it acts up, we can surely patch it to make it behave.

Is it possible to have functioning shaders in the game that cast shadows and do reflections and such properly? Is this game even compatible with the newer havok engine?
This uses pretty old DX - and that's as far as my DX knowledge goes (sorry, I'm an OpenGL person due to the platforms I work with/on). I'm pretty sure someone more experience with WinAPI/DX hacking could chime in on how possible is it to hack around old pipelines in video games.

And the only thing I know about the Havok engine in this game is this:
Code: [Select]
-------------------------------------
 Havok Hardcore - Version(4545) Build(20021015)
 Client version
 Base system initialized.             
--------------------------------------
I assume a few things might've changed since 2002 ;).

19
Late reply, but why does the patcher method only work on windows? Is it because a special DLL is required(wouldn't that be possible with wine on linux?) or other reasons?

It loads a custom DLL into the RA2 process that then uses some VirtualAllocEx calls to enable hotpatching the main binary's code. Last time I checked Wine did not implement this function.

20
Real Robotics Discussion / Re: BattleBots Season 2 Discussion Thread
« on: July 22, 2016, 07:18:11 PM »
Okay, this might be one of the best episodes thus far. Great fights, but I actually also laughed a few times at the presenters (even the uranus joke), and they are beginning to be… likeable.

Pages: [1] 2 3 4 5 6 7 8 ... 103