diff --git a/Artemis/Artemis/Artemis.csproj b/Artemis/Artemis/Artemis.csproj
index dfc6cda5d..baec03fe0 100644
--- a/Artemis/Artemis/Artemis.csproj
+++ b/Artemis/Artemis/Artemis.csproj
@@ -23,6 +23,8 @@
false
+
+
C:\Users\spoin\Desktop\Artemis builds\
true
Disk
@@ -38,8 +40,6 @@
false
true
true
-
-
x64
@@ -101,6 +101,9 @@
..\packages\MahApps.Metro.1.3.0-ALPHA017\lib\net45\MahApps.Metro.dll
True
+
+ E:\Downloads\Chome Downloads\MemorySharp-master\MemorySharp-master\MemorySharp\bin\Release\MemorySharp.dll
+
False
@@ -363,6 +366,7 @@
+
SettingsSingleFileGenerator
Offsets.Designer.cs
@@ -443,6 +447,7 @@
PreserveNewest
+
PreserveNewest
diff --git a/Artemis/Artemis/Modules/Games/Witcher3/Witcher3Model.cs b/Artemis/Artemis/Modules/Games/Witcher3/Witcher3Model.cs
index f748637a9..257392c74 100644
--- a/Artemis/Artemis/Modules/Games/Witcher3/Witcher3Model.cs
+++ b/Artemis/Artemis/Modules/Games/Witcher3/Witcher3Model.cs
@@ -8,6 +8,7 @@ using Artemis.Modules.Games.RocketLeague;
using Artemis.Settings;
using Artemis.Utilities.Keyboard;
using Artemis.Utilities.Memory;
+using Binarysharp.MemoryManagement;
using MyMemory;
using Newtonsoft.Json;
@@ -15,10 +16,11 @@ namespace Artemis.Modules.Games.Witcher3
{
public class Witcher3Model : GameModel
{
- private KeyboardRectangle _signRect;
private IntPtr _baseAddress;
private GamePointersCollectionModel _pointer;
private RemoteProcess _process;
+ private KeyboardRectangle _signRect;
+ private MemorySharp _mem;
public Witcher3Model(MainModel mainModel, RocketLeagueSettings settings) : base(mainModel)
{
@@ -33,6 +35,7 @@ namespace Artemis.Modules.Games.Witcher3
{
return true;
}
+
public override void Dispose()
{
_process = null;
@@ -40,7 +43,8 @@ namespace Artemis.Modules.Games.Witcher3
public override void Enable()
{
- _signRect = new KeyboardRectangle(MainModel.ActiveKeyboard, 0, 0, new List(), LinearGradientMode.Horizontal)
+ _signRect = new KeyboardRectangle(MainModel.ActiveKeyboard, 0, 0, new List(),
+ LinearGradientMode.Horizontal)
{
Rotate = true,
LoopSpeed = 0.5
@@ -52,6 +56,7 @@ namespace Artemis.Modules.Games.Witcher3
var tempProcess = MemoryHelpers.GetProcessIfRunning(ProcessName);
_baseAddress = tempProcess.MainModule.BaseAddress;
_process = new RemoteProcess((uint) tempProcess.Id);
+ _mem = new MemorySharp(tempProcess);
}
public override void Update()
@@ -64,6 +69,14 @@ namespace Artemis.Modules.Games.Witcher3
_pointer.GameAddresses.First(ga => ga.Description == "Sign").BasePointer,
_pointer.GameAddresses.First(ga => ga.Description == "Sign").Offsets);
+ var test =
+ _mem.Modules.MainModule.FindPattern(
+ new byte[]
+ {
+ 0x88, 0x07, 0x48, 0x8B, 0x5C, 0x24, 0x30, 0x48, 0x83, 0xC4, 0x20, 0x5F, 0xC3, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xC2, 0x00, 0x00, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0x48
+ },
+ "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", 0, true);
+ var tessst = _process.MemoryManager.Read(test.Address);
var result = _process.MemoryManager.Read(addr);
switch (result)
diff --git a/Artemis/Artemis/Properties/Resources.Designer.cs b/Artemis/Artemis/Properties/Resources.Designer.cs
index 5765a8156..c9ce2b8ae 100644
--- a/Artemis/Artemis/Properties/Resources.Designer.cs
+++ b/Artemis/Artemis/Properties/Resources.Designer.cs
@@ -60,10 +60,27 @@ namespace Artemis.Properties {
}
}
+ ///
+ /// Looks up a localized string similar to <?xml version="1.0" encoding="UTF-16"?>
+ ///<!-- Used by Artemis to get the active Sign -->
+ ///<UserConfig>
+ /// <Group id="Artemis" displayName="Artemis">
+ /// <VisibleVars>
+ /// <Var id="ActiveSign" displayName="ActiveSign" displayType="SLIDER:0:1:1000000"/>
+ /// </VisibleVars>
+ /// </Group>
+ ///</UserConfig>.
+ ///
+ internal static string artemis {
+ get {
+ return ResourceManager.GetString("artemis", resourceCulture);
+ }
+ }
+
///
/// Looks up a localized string similar to "Artemis"
///{
- /// "uri" "{{address}}/csgo_game_event"
+ /// "uri" "http://127.0.0.1:{{port}}/csgo_game_event"
/// "timeout" "5.0"
/// "buffer" "0.1"
/// "throttle" "0.1"
@@ -85,5 +102,15 @@ namespace Artemis.Properties {
return ResourceManager.GetString("gamestateConfigFileCsGo", resourceCulture);
}
}
+
+ ///
+ /// Looks up a localized resource of type System.Byte[].
+ ///
+ internal static byte[] playerWitcher {
+ get {
+ object obj = ResourceManager.GetObject("playerWitcher", resourceCulture);
+ return ((byte[])(obj));
+ }
+ }
}
}
diff --git a/Artemis/Artemis/Properties/Resources.resx b/Artemis/Artemis/Properties/Resources.resx
index 775c9f736..782795640 100644
--- a/Artemis/Artemis/Properties/Resources.resx
+++ b/Artemis/Artemis/Properties/Resources.resx
@@ -118,7 +118,13 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ ..\Resources\artemis.xml;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252
+
..\Resources\gamestateConfigFileCsGo.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252
+
+ ..\Resources\playerWitcher.ws;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
\ No newline at end of file
diff --git a/Artemis/Artemis/Resources/artemis.xml b/Artemis/Artemis/Resources/artemis.xml
new file mode 100644
index 000000000..4bb757ee4
--- /dev/null
+++ b/Artemis/Artemis/Resources/artemis.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Artemis/Artemis/Resources/playerWitcher.ws b/Artemis/Artemis/Resources/playerWitcher.ws
new file mode 100644
index 000000000..2fead1e77
Binary files /dev/null and b/Artemis/Artemis/Resources/playerWitcher.ws differ