Add support for xash3D
-
You can run half life using xash3D on non nvidia devices. Half - life on pi would be awesome!
-
Hmm... it looks like xash3D runs on linux, so you should be able to install the engine and the game no problem. You'd just have to make an .sh that launches the specific game with the engine and save that into Ports, in theory. Idk, maybe I'm wrong, anyone else want to weigh in?
https://github.com/FWGS/xash3d/wiki/Building-and-running#running -
My concern would be if xash3D has ARM processor support. If not then it's not going to run on a Raspberry Pi. If it does than this could be a great addition to the RetroPie line up!
-
Well it does run on Android (ARM) so thats.... something. Might have to get in touch with people who made the Android port.
-
Someone has the Xash3D engine running Half-Life on a Pandora handheld (which has an ARM processor)!
http://pandoralive.info/?p=5043They said it's got a couple bugs, like the crowbar disappearing and textures looking fuzzy up close.
-
There's a bit of discussion here: https://github.com/RetroPie/RetroPie-Setup/issues/1040 but I'm not holding my breath on it
-
Hi, This work for me: https://github.com/sergiopoverony/xash3d
Resolution 800x600. -
@Cesarpuig as soon as i saw this i jumped on it. and i have to say it does run very well.
nice find -
@Cesarpuig do have music on yours?
i cant find any info on how to get it to play if it does. i know that some builds had it turned offUPDATE
Never mind. -
@Cesarpuig @ExarKunIv Hey did either of you manage to get a gamepad working? I added -sdl_joy_old_api to /opt/retropie/ports/xash3d/Xash3D.sh and it now allows for movement, dual analogue control moving around, and the menu buttons let me select a game or cancel my selection. But once I'm in the game there doesn't appear to be any mapping for any of the actions. Jump, attack etc, the controller doesn't do anything.
I had a look around online about as it seems the valve folder has a joystick.cfg (which is empty) and config.cfg which has the following controller values:-
joy_axis_binding "sfpyrl"
joy_enable "1"
joy_forward "1.0"
joy_forward_deadzone "0"
joy_forward_key_threshold "24576"
joy_lt_threshold "-16384"
joy_pitch "200.0"
joy_pitch_deadzone "0"
joy_rt_threshold "-16384"
joy_side "1.0"
joy_side_deadzone "0"
joy_side_key_threshold "24576"
joy_yaw "200.0"
joy_yaw_deadzone "0"
joystick "0"Any other idea what else I need to input to get the other buttons working? Seems odd the menu buttons are mapped somewhere but I can't figure out where.
-
@retropieuser555 im slowing working on getting all my ports working with my game pad.
so for me i was just going to us xboxdrv for the mapping and just map the keyboard to my gamepad.
for me it is the easiest but that's just because i have been using xboxdrv for so long -
@ExarKunIv Yeah makes sense. I always find xboxdrv to be a huge headache, I got it working on dosbox on a few games but for some reason I couldn't get the controller to killall xboxdrv and go back to emulationstation controls.
Oh one other question with xash3d, do you get a crash and a segmentation fault whenever you try and select the GUI for keyboard or gamepad controls? Or is that just me?
-
@retropieuser555
if you need some help with xboxdrv i could always try to help out.as for your other question. i have not messed with it that much yet. but i will keep my eye out for that. ill try to get play with it a little later and ill let you know what i find
-
@ExarKunIv in terms of xboxdrv there's this post I made before but I couldn't quite figure out what I'm missing in the end https://retropie.org.uk/forum/topic/25490/xboxdrv-returning-back-to-normal-settings-when-leaving-dosbox?_=1590594996098 Once things get into terminal I am pretty lost what it's trying to do generally.
-
do you have
runcommand-onend.sh
?UPDATE
im able to get into the gamepad and keyboard options to change anything without crashing
-
@ExarKunIv No I don't think I've made that file, it should be with runcommand-onstart.sh right? And try to write something that always turns off xboxdrv each time I close a core or program?
re: xash3d That's interesting. I wonder if I should try and reinstall xash3d, as if I can get the GUI to open up properly perhaps I can edit the controls in there.
Do you have your config.cfg file from the valve folder please? I suspect that's the file xash3d looks at for this
-
@retropieuser555 yes you should have the
onstart
andonend
in the same place, that is why the xboxdrv will not turn off for you before. there is nothing to tell it to turn off//======================================================================= // Copyright Flying With Gauss Team 2020 © // config.cfg - archive of cvars //======================================================================= MP3Volume "0.8" allow_levelshots "0" bottomcolor "6" cl_allow_fragment "0" cl_backspeed "400" cl_charset "utf-8" cl_cmdbackup "2" cl_cmdrate "60" cl_draw_beams "1" cl_draw_particles "1" cl_enable_compress "0" cl_enable_split "1" cl_enable_splitcompress "0" cl_envshot_size "256" cl_forwardspeed "400" cl_himodels "0.000000" cl_laddermode "2" cl_lc "1" cl_lightstyle_lerping "0" cl_lw "1" cl_maxoutpacket "0" cl_maxpacket "40000" cl_maxpayload "0" cl_nopred "1" cl_nosmooth "0" cl_predict "0" cl_scoreboard_bg "1" cl_showerror "0" cl_showfps "0" cl_showpacketloss "0" cl_showpos "0" cl_sidespeed "400" cl_smoothtime "0.1" cl_sprite_nearest "0" cl_trace_events "0" cl_trace_messages "0" cl_trace_stufftext "0" cl_updaterate "60" cl_viewbob "0" cl_vsmoothing "0.05" cmd_scripting "0" con_alpha "1.0" con_black "0" con_charset "cp1251" con_fontnum "-1" con_fontscale "1.0" con_fontsize "1" con_halffrac "0.5" con_mapfilter "1" con_maxfrac "1" crosshair "1" download_types "msec" dsp_off "0" fps_max "100.0" gamma "2.500000" gl_allow_software "0" gl_allow_static "0" gl_anisotropy "0.000000" gl_check_errors "1" gl_clear "0" gl_compensate_gamma_screenshots "0" gl_detailscale "4.0" gl_finish "0" gl_keeptjunctions "1" gl_max_size "256" gl_nosort "0" gl_overbright "0" gl_overbright_studio "0" gl_swapInterval "0" gl_texture_lodbias "0.0" gl_texturemode "GL_LINEAR_MIPMAP_LINEAR" hand "0" host_allow_materials "0" host_mapdesign_fatal "1" hostname "unnamed" http_autoremove "1" http_timeout "45" http_useragent "xash3d" hud_capturemouse "1" hud_centerid "0" hud_classautokill "1" hud_draw "1" hud_fastswitch "0" hud_scale "0" hud_takesshots "0" hud_textmode "0" hud_utf8 "0" joy_axis_binding "sfpyrl" joy_enable "1" joy_forward "1" joy_forward_deadzone "0" joy_forward_key_threshold "24576" joy_lt_threshold "-16384" joy_pitch "100" joy_pitch_deadzone "0" joy_rt_threshold "-16384" joy_side "1" joy_side_deadzone "0" joy_side_key_threshold "24576" joy_yaw "100" joy_yaw_deadzone "0" joystick "0.000000" look_filter "0" lookspring "0" lookstrafe "0" m_enginemouse "0" m_enginesens "0.3" m_forward "1" m_ignore "0" m_pitch "0.022000" m_side "0.8" m_yaw "0.022" menu_mp_firsttime "1" model "gordon" mp_decals "300" mp_logecho "1" mp_logfile "1" name "Player" net_drawslider "0" net_graph "0" net_graphheight "64" net_graphpos "1" net_graphsolid "1" net_graphwidth "192" net_scale "5" net_speeds "0" r_adjust_fov "1" r_bump "1" r_customdraw_playermodel "0" r_detailtextures "0" r_drawentities "1" r_dynamic "1" r_fastsky "0" r_flaresize "200" r_lighting_ambient "0.3" r_lighting_extended "1" r_lighting_modulate "0.6" r_oldparticles "0" r_speeds "0" r_sprite_lerping "1" r_sprite_lighting "1" r_strobe "0" r_strobe_cooldown "3" r_strobe_debug "0" r_strobe_swapinterval "0" r_studio_drawelements "1" r_studio_lambert "2" r_studio_lerping "1" r_studio_lighting "1" r_studio_sort_textures "0" r_studiocache "1" r_underwater_distortion "0.4" r_vbo "1" r_vbo_dlightmode "1" r_wadtextures "1" rate "30000" s_combine_sounds "0" s_cull "0" s_lerping "0" s_phs "0" s_reverse_channels "0" s_samplecount "0" s_show "0" sensitivity "3" sleeptime "1" snd_mute_losefocus "1" suitvolume "0.250000" sv_aim "1" sv_allow_PhysX "1" sv_allow_compress "1" sv_allow_download "0" sv_allow_fragment "0" sv_allow_joystick "1" sv_allow_mouse "1" sv_allow_noinputdevices "1" sv_allow_rotate_pushables "0" sv_allow_split "1" sv_allow_studio_attachment_angles "0" sv_allow_touch "1" sv_allow_vr "1" sv_check_errors "0" sv_corpse_solid "0" sv_downloadurl "" sv_enttools_enable "0" sv_enttools_maxfire "5" sv_fixmulticast "1" sv_log_onefile "0" sv_log_singleplayer "0" sv_maxpacket "2000" sv_precache_meshes "1" sv_quakehulls "0" sv_reconnect_limit "3" sv_sendvelocity "1" sv_skipshield "0" sv_stepsize "18" sv_trace_messages "0" sv_userinfo_enable_penalty "1" sv_userinfo_penalty_attempts "4" sv_userinfo_penalty_multiplier "2" sv_userinfo_penalty_time "0.3" sv_validate_changelevel "1" topcolor "30" touch_config_file "touch.cfg" touch_enable "0" ui_borderclip "0" ui_language "english" ui_renderworld "0" ui_show_window_stack "0" ui_showmodels "0" vgui_utf8 "0" vibration_enable "1" vibration_length "1.0" viewsize "120.000000" violence_ablood "1" violence_agibs "1" violence_hblood "1" violence_hgibs "1" volume "0.800000" exec keyboard.cfg exec userconfig.cfg // end of config.cfg
-
@ExarKunIv Thanks for that! I'm gonna mess around with xash3d a little more tonight or tomorrow and see if I can figure out where the differences are.
I'm gonna mess around with those run commands. At the moment I'm loading xboxdrv as part of the .sh files of the dosbox games, but I'll try this way around instead and see if it's more successful than what I was doing before. Thanks for your help with that!
-
Do you guys know a way to get the constant console messages to stop appearing onscreen?
-
@quicksilver delete
-console
fron launch commandLD_LIBRARY_PATH=/home/pi/RetroPie/roms/ports/Half-Life /home/pi/RetroPie/roms/ports/Half-Life/xash3d -console -clientlib cl_dlls/client.so -dll dlls/hl.so
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.