LINUX.ORG.RU
ФорумGames

CS1.6+CD4.29 теперь возможно!


0

0

Хочу обрадовать всех linux-gamers!

Чтобы играть на серверах с cd скачайте cdhack и исползуйте инструкцию с linux-gamers.net

просто укажите путь к cd dll на cdhack.dll

работает под cedega, проверено лично мной.

ссылок прямых не кидаю, а то побьют за варез. искатьв google.com и ya.ru


Ответ на: комментарий от seb

> Видать не со всяким CS 1.6 работатет. с моим не запустился. :(

скажи как запускаешь и какие версии кс и cdhack

device
() автор топика
Ответ на: комментарий от device

>скажи как запускаешь и какие версии кс и cdhack

CS 1.6 с двумя проинсталлированными модами для CS Zero и просто CS. Выкачал с ФТП провайдера.

CD-Clisnt - v 4.29.0

cdhack - Найдем помошб. рамблера или яху. В описании утверждалась возможесть работы с cd 4.29.0.

Запуск как в инструкции написано, но вместо ссылки на <path to>cd.dll изменил скрипт на <path to>cdhack.dll После неудачи, заменил ссылку на cdeath.exe на cdhack.exe. Тоже не удачно.

Что интересно, в Win, cdhack работает, даже читы по f12 включает. Хотя это неспортивно ИМХО.

seb
()
Ответ на: комментарий от seb

весь прикол в том, что в линуксе работает только cdhack...

это, а в консоли появились команды типа cd_fps ?

cd-disabler 1,1c без проблем работает. только WinVer в конфиге нужно в winxp поставить

device
() автор топика
Ответ на: комментарий от seb

> После неудачи, заменил ссылку на cdeath.exe на cdhack.exe. Тоже не удачно.

Экзешник вообще можно из загрузки в sh убрать. он не нужен

device
() автор топика
Ответ на: комментарий от device

есть вот такой вот скрипт запуска
#!/bin/bash
CDLOADER_SO="/home/****/libcdlinux.so"
CDLOADER_DLL="C:\\cdhack.dll"
CDLOADER_WINE="cedega"
HALFLIFEDIR="/usr/lib/transgaming_cedega/.transgaming/c_drive/Valve"
HLOPTS="-noaudiocd -noipx -32bpp -game cstrike"
export LD_PRELOAD=$LD_PRELOAD:"$CDLOADER_SO"
cd $HALFLIFEDIR
export CDDLL="$CDLOADER_DLL"
$CDLOADER_WINE --winver winxp "hl.exe" --hl.exe -console $HLOPTS "$@"

и

#include <stdlib.h>
#include <stdio.h>
#define __USE_GNU
#include <dlfcn.h>

typedef char* ( *o_GetCommandLineA_ptr ) ( void );
static o_GetCommandLineA_ptr o_GetCommandLineA;

typedef void* ( *o_LoadLibraryA_ptr ) ( char* );
static o_LoadLibraryA_ptr o_LoadLibraryA;

static int initialized = 0;
static char* cddll = 0;

char* GetCommandLineA ( void )
{
if (!initialized)
{
o_GetCommandLineA = ( o_GetCommandLineA_ptr) dlsym( RTLD_NEXT, "GetCommandLineA" );
o_LoadLibraryA = ( o_LoadLibraryA_ptr ) dlsym( RTLD_NEXT, "LoadLibraryA" );
cddll = getenv( "CDDLL" );
}

initialized++;

if (initialized == 6)
{
printf ("Injecting %s NOW!\n", cddll);
o_LoadLibraryA (cddll);
}

return o_GetCommandLineA ();
}

но он не грузит дллку ((

anonymous
()
Ответ на: комментарий от anonymous

device@home32 ~/TransGaming_Drive/cs $ cat cs.sh
#!/usr/bin/sh
CDLOADER_SO=`pwd`/libcdlinux.so
CDLOADER_DLL="C:\\cs\\cdhack.dll"
CDLOADER_WINE="cedega"
if [ "$1" == "-cd" ] && shift
then

if [ -r "$CDLOADER_SO" ]
then
echo "Injecting $CDLOADER_SO with DLL $CDLOADER_DLL..."
export LD_PRELOAD=$LD_PRELOAD:"$CDLOADER_SO"
else
echo "Could not find CDLOADER_SO"
fi
CDDLL="$CDLOADER_DLL" $CDLOADER_WINE "hl.exe" -- -game cstrike "$@"
else
$CDLOADER_WINE "hl.exe" -- "$@"
fi
---------EOF---------

device@home32 ~/TransGaming_Drive/cs $ cat cdlinux.c
#include <stdlib.h>
#include <stdio.h>
#define __USE_GNU
#include <dlfcn.h>

typedef char* ( *o_GetCommandLineA_ptr ) ( void );
static o_GetCommandLineA_ptr o_GetCommandLineA;

typedef void* ( *o_LoadLibraryA_ptr ) ( char* );
static o_LoadLibraryA_ptr o_LoadLibraryA;

static int initialized = 0;
static char* cddll = 0;

char* GetCommandLineA ( void )
{
if (!initialized)
{
o_GetCommandLineA = ( o_GetCommandLineA_ptr) dlsym( RTLD_NEXT, "GetCommandLineA" );
o_LoadLibraryA = ( o_LoadLibraryA_ptr ) dlsym( RTLD_NEXT, "LoadLibraryA" );
cddll = getenv( "CDDLL" );
}

initialized++;

if (initialized == 6)
{
printf ("Injecting %s NOW!\n", cddll);
o_LoadLibraryA (cddll);
}

return o_GetCommandLineA ();
}
---------EOF---------

мой конфиг cedeg'и
device@home32 ~ $ grep -v "^;" ~/.transgaming/config | grep '.'
WINE REGISTRY Version 2
[Drive C]
"Path" = "/home/device/.transgaming/c_drive"
"Type" = "hd"
"Label" = "Dos Drive"
"Filesystem" = "win95"

[Drive D]
"Path" = "${HOME}"
"Type" = "hd"
"Label" = "My Home"
"Filesystem" = "win95"

[Drive E]
"Path" = "/tmp"
"Type" = "hd"
"Label" = "tmp"
"Filesystem" = "win95"
[Drive G]
"Path" = "/media/cdrom"
"Type" = "cdrom"
"Filesystem" = "win95"
[Drive G]
"Path" = "/"
"Type" = "hd"
"Label" = "root"
"Filesystem" = "win95"
[wine]
"Windows" = "c:\\windows"
"System" = "c:\\windows\\system32\\"
"Temp" = "e:\\"
"Path" = "c:\\windows\\;c:\\windows\\system32\\"
"GraphicsDriver" = "x11drv"
"ShellLinker" = "/usr/lib/transgaming_cedega/winex/bin/wineshelllink"
"MozillaControl" = "Y"
# <wineconf>
[DllDefaults]
"DefaultLoadOrder" = "native, builtin, so"
[DllOverrides]
"commdlg" = "builtin, native"
"comdlg32" = "builtin, native"
"oleaut32" = "builtin, native"
"ver" = "builtin, native"
"version" = "builtin, native"
"shell" = "builtin, native"
"shell32" = "builtin, native"
"shfolder" = "builtin, native"
"shlwapi" = "builtin, native"
"lzexpand" = "builtin, native"
"lz32" = "builtin, native"
"comctl32" = "builtin, native"
"commctrl" = "builtin, native"
"advapi32" = "builtin, native"
"crtdll" = "builtin, native"
"mpr" = "builtin, native"
"winspool.drv" = "builtin, native"
"d3d8" = "builtin, native"
"d3d9" = "builtin, native"
"d3drm" = "builtin, native"
"ddraw" = "builtin, native"
"dinput" = "builtin, native"
"dmusic" = "builtin, native"
"dsound" = "builtin, native"
"opengl32" = "builtin, native"
"msvcrt" = "native, builtin"
"rpcrt4" = "native, builtin"
"msvideo" = "builtin, native"
"msvfw32" = "builtin, native"
"mcicda.drv" = "builtin, native"
"mciseq.drv" = "builtin, native"
"mciwave.drv" = "builtin, native"
"mciavi.drv" = "native, builtin"
"mcianim.drv" = "native, builtin"
"msacm.drv" = "builtin, native"
"msacm" = "builtin, native"
"msacm32" = "builtin, native"
"midimap.drv" = "builtin, native"
"wininet" = "builtin, native"
[Version]
"Windows" = "winxp"
[x11drv]
"AllocSystemColors" = "100"
"CopyDefaultColors" = "0"
"PrivateColorMap" = "N"
"PerfectGraphics" = "N"
"Managed" = "Y"
"UseDGA" = "N"
"UseXShm" = "Y"
"DXGrab" = "Y"
"UseXVidMode" = "Y"
"UseXRandR" = "N"
"DesktopDoubleBuffered" = "Y"
"TextCP" = "0"
"VideoRam" = "128"
"AGPVertexRam" = "64"
"NV_VAR" = "Y"
[d3dgl]
"AnisotropicTextureFiltering" = "N"
"VertexShaders" = "Y"
"PixelShaders" = "Y"
"PixelShadersLevel" = "1.3"
"ClipSpaceFix" = "Y"
[opengl]
[dinput]
"DefaultDeadZone" = "1000"
[joystick]
"Logitech Inc. WingMan RumblePad" = "X,Y,slider,Z,RZ,hat,none"
[fonts]
"Resolution" = "96"
"Default" = "-adobe-times-"
[FontPatterns]
"Pattern0" = "-adobe-times*"
"Pattern1" = "-adobe-helvetica*"
"Pattern2" = "-adobe-courier*"
"Pattern3" = "-misc-fixed*"
[FontDirs]
[FontAlias]
"MS Serif"="Times New Roman"
"Helv"="Arial"
"MS Sans Serif"="Arial"
"System"="Arial"
"Tahoma"="Arial"
[memory]
[serialports]
"Com1" = "/dev/ttyS0"
"Com2" = "/dev/ttyS1"
"Com3" = "/dev/ttyS2"
"Com4" = "/dev/modem"
[parallelports]
"Lpt1" = "/dev/lp0"
[spooler]
"LPT1:" = "|lpr"
"LPT2:" = "|gs -sDEVICE=bj200 -sOutputFile=/tmp/fred -q -"
"LPT3:" = "/dev/lp3"
[ports]
[spy]
"Exclude" = "WM_SIZE;WM_TIMER;"
[registry]
"LoadGlobalRegistryFiles" = "n"
"LoadHomeRegistryFiles" = "Y"
"LoadWindowsRegistryFiles" = "n"
"WritetoHomeRegistryFiles" = "Y"
"SaveOnlyUpdatedKeys" = "Y"
[Tweak.Layout]
"WineLook" = "Win98"
[Console]
"Drivers" = "xterm"
"XtermProg" = "konsole"
[Clipboard]
"ClearAllSelections" = "0"
"PersistentSelection" = "1"
[afmdirs]
[Wineserver]
"SHMWineserver" = "Y"
[WinMM]
"Drivers" = "wineoss.drv"
"WaveMapper" = "msacm.drv"
"MidiMapper" = "midimap.drv"
[wineoss]
"UseMMap" = "N"
"FullDuplex" = "N"
[winealsa]
"UseMMap" = "Y"
---------EOF---------

компилим libcdlinux командой
$ gcc -ldl -shared -o libcdlinux.so cdlinux.c

запускаем cs $ sh cs.sh -cd

p.s. оно придирчиво к версиям.. проверенно и работает точно с CD-disabler v1.1c


device
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.