Vital Posted November 25, 2012 Share Posted November 25, 2012 I use resizeable screen with hi-graphic settings. Looks like GetUpText doesn't work this way. So i try rs_GetTextAt function instead but it doesn't work too. function rs_GetTextAt(Font: LongInt; x: LongInt; y: LongInt): AnsiString I used rs_LoadChars before to load ..SCAR Divi\Includes\OSI\RS2\Fonts\UpChars font and it works. I changed options at rs_GetTextAt function randomly. The problem is that i don't know what x and y valuables means. I tried different values and with Writeln(rs_GetTextAt(UpChars, 8, 57)) it began work but result looks like this: ::::- ::::- ::::- -::: ::- - (this text is appears when i move mouse and upper text is changed ) Is anybody have any idea? Thanks. Quote Link to comment Share on other sites More sharing options...
LordJashin Posted November 25, 2012 Share Posted November 25, 2012 Check out the old manual - http://scar-divi.com/oldmanual/ Then hit CTRL+F and search for gettext or w/e. The functions that have rs_ before them mean they are for Runescape use only i think. Quote Link to comment Share on other sites More sharing options...
Wanted Posted November 25, 2012 Share Posted November 25, 2012 You sure you loaded them correctly? See how they are loaded with OSI https://github.com/OSI1/OSI1/blob/master/OSI.scar [sCAR]{=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= procedure SetUpOSI; Contributors: Wanted, Timer, Freddy, LordJashin. Description: Sets up OSI. Date Created: August 7th, 2011. By Wanted Last Modified: October 14th, 2012. By LordJashin. RS2 Build 735. =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=} procedure SetUpOSI; {$IFDEF RS2} var RS2FontFolder: string; {$ENDIF} {$IFDEF SMART} i: Integer; {$ENDIF} begin try OSI_Variance := 3.0; OSI_WriteAndLog('Routines Enabled'); {$IFDEF BASS} Lib_Bass_Init('Divi\Libraries\Bass.dll'); {$ENDIF} {$IFDEF RS2} FriendChars := 0; RS2GlobalVars; if RS2_CheckForUpdates then RSupdateGlobals; RS2FontFolder := ''; OSI_WriteAndLog('RS2: Routines Enabled'); {$IFDEF OSI_Color_Anti_Randoms} OSI_WriteAndLog('RS2: Color Random Detection and Solving Enabled'); InitiateAntiRandoms; {$ELSE} OSI_WriteAndLog('RS2: Color Random Detection and Solving Disabled'); {$ENDIF} {$IFNDEF DisableRS2Fonts} RS2FontFolder := IncludesPath + 'OSI\RS2\Fonts\'; if (not (DirectoryExists(RS2FontFolder))) then RS2FontFolder := FontsPath; OptionChars := rs_LoadChars(RS2FontFolder + 'ScreenChars\'); UpChars := rs_LoadChars(RS2FontFolder + 'UpChars\'); ScreenChars := LoadChars2(RS2FontFolder + 'ScreenChars\'); NPCChars := LoadChars2(RS2FontFolder + 'NPCChars\'); SmallChars := LoadChars2(RS2FontFolder + 'SmallChars\'); StatChars := LoadChars2(RS2FontFolder + 'StatChars\'); FriendChars := LoadChars2(RS2FontFolder + 'FriendChars\'); LoginChars := LoadChars2(RS2FontFolder + 'LoginChars\'); XPChars := LoadChars2(RS2FontFolder + 'UpChars\'); OSI_WriteAndLog('RS2: Loaded Fonts: OptionChars, ScreenChars, NPCChars, UpChars, SmallChars, StatChars, FriendChars, LoginChars, XPChars'); {$ELSE} OSI_WriteAndLog('RS2: Font Loading Disabled.'); {$ENDIF} SetLength(Players, 1); LoadRS2WorldArray; AllowQuickChat := True; AllowLootShare := True; {$IFDEF SMART} if (SMART_Server = 0) and (Length(Players[CurrentPlayer].WorldInfo) > 1) then for i := 0 to high(RS2WorldArray) do if Players[CurrentPlayer].WorldInfo[1] = i + 1 then SMART_Server := i + 1; if (SMART_Server = 0) then SMART_Server := RandomWorld(false); if InitSmartLib(IncludesPath + 'OSI\RS2\Misc\libsmartremote32.dll') then SMART_Path := IncludesPath + 'OSI\RS2\Misc\' else if InitSmartLib(ScriptPath + 'OSI\RS2\Misc\libsmartremote32.dll') then SMART_Path := ScriptPath + 'OSI\RS2\Misc\' else if InitSmartLib(ScriptPath + 'RS2\Misc\libsmartremote32.dll') then SMART_Path := ScriptPath + 'RS2\Misc\' else begin OSI_WriteAndLog('RS2: Couldn''t load SMART (libsmartremote32.dll)' + #13#10 + 'RS2: Try restarting SCAR Divi, SMART, or Re-installing OSI' + #13#10 + 'RS2: If problems persist post a thread on the forums at http://www.scar-divi.com'); TerminateScript; end; if (not (NonAutomaticSMART)) then InitiateSMART; {$ELSE} GetClient.Activate; RSClientOriginalImageArea := GetClient.ImageArea; RSClientOriginalInputArea := GetClient.InputArea; UpdateRSClient; OSI_WriteAndLog('RS2: Looking for (Login Screen, Lobby Screen, or LoggedIn)...8-13secs'); if not WaitFunc(@RSReady, True, 100, 250, 8000, 13000) then FixLoginScreen; {$ENDIF} PlayerStartTime := GetSystemTime; {$ENDIF} MouseSpeed := 15; SetColorSpeed2Modifiers(0.2, 0.2); ColorToleranceSpeed(1); except HandleOSIException; finally if not OSIExceptionThrown then begin IsOSISetup := True; OSI_WriteAndLog('Successfully Setup!'); end; end; end;[/sCAR] Quote Link to comment Share on other sites More sharing options...
Bixby Sayz Posted November 25, 2012 Share Posted November 25, 2012 I use resizeable screen with hi-graphic settings.A lot of the functions (not just text functions) don't work unless you are using FIXED mode and SAFE MODE graphics. There is a way around it if you read from the desktop rather than the client itself. It is a bit of work to setup since you have to figure out what part of the desktop corresponds to the client etc. Quote Link to comment Share on other sites More sharing options...
Vital Posted November 26, 2012 Author Share Posted November 26, 2012 I got it!!! i set up such code: for i:=1 to 100 do for j:=50 to 100 do begin Writeln(rs_GetTextAt(UpChars, i, j)); Writeln('i'+IntToStr(i)) Writeln('j'+IntToStr(j)) end; and with i=1 and j=56 it works, i got upper text! so the final result for my personal display settings is: Writeln(rs_GetTextAt(UpChars, 1, 56)) Thank you very much guys! Quote Link to comment Share on other sites More sharing options...
Wanted Posted November 26, 2012 Share Posted November 26, 2012 Glad to see you got it working Quote Link to comment Share on other sites More sharing options...
footballjds Posted December 10, 2012 Share Posted December 10, 2012 hmm, now that's interesting. a script for high detail. Is object finding hard? Quote Link to comment Share on other sites More sharing options...