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 - kevL

Pages: [1] 2 3 ... 32
1
Tools / Re: LOFTEMPS Viewer 3D
« on: April 14, 2024, 06:53:27 am »
looks like an excellent tool to check lofts and parts placement

2
Tools / Re: LOFTEMPS Viewer 3D
« on: April 13, 2024, 02:58:24 am »
nice :)

3
Tools / Re: LOFTEMPS Viewer 3D
« on: April 11, 2024, 09:36:11 pm »
sweet, nice job. @bulletdesigner was looking for something like this (but i wouldnt/couldnt do it that good in Mv2)

personal curiosity: did you use quaternions for camera movement?

4
Tools / Re: MAPVIEW upgrade
« on: April 06, 2024, 10:38:13 am »
although I can't get the Top view to show symbols from my LoFTs

hm, interesting issue ... the blobs (as i call them) are determined somewhat arbitrarily after examining all parts in a tile ... ill have a look later to see if a default blob is feasible.

5
Tools / Re: MAPVIEW upgrade
« on: April 06, 2024, 02:32:14 am »
ok, looking into it ... It's gona take me days or even weeks to get back into it (the code) ... esp. the idea of "editing multiple ID's bytes at once"

am not in the best of health,

6
Tools / Re: MAPVIEW upgrade
« on: March 02, 2024, 11:13:36 pm »
Thanks, you too.

ps. good luck with the other one (i cant make heads or tails of it)

if u really can't access options, the config files can be edited ... I suspect that the problem is not with Options per se, but with instantiating the propertypanel for user input

7
Tools / Re: MAPVIEW upgrade
« on: March 02, 2024, 01:08:22 pm »
And ...  ;D ... it also crashes when I use the mouse wheel.

Code: [Select]
Unhandled Exception:
System.EntryPointNotFoundException: WindowFromPoint assembly:<unknown assembly> type:<unknown type> member:(null)
  at (wrapper managed-to-native) MapView.MainViewF.WindowFromPoint(System.Drawing.Point)
  at MapView.MainViewF.PreFilterMessage (System.Windows.Forms.Message& m) [0x00020] in <0a0656103b894489b35d71dc5339306a>:0
  at System.Windows.Forms.Application.FilterMessage (System.Windows.Forms.Message& message) [0x0001f] in <b2f5ba339bd244a2a072fe9fd5539e2f>:0
  at System.Windows.Forms.Application.RunLoop (System.Boolean Modal, System.Windows.Forms.ApplicationContext context) [0x000e9] in <b2f5ba339bd244a2a072fe9fd5539e2f>:0
  at System.Windows.Forms.Application.Run (System.Windows.Forms.ApplicationContext context) [0x00011] in <b2f5ba339bd244a2a072fe9fd5539e2f>:0
  at System.Windows.Forms.Application.Run (System.Windows.Forms.Form mainForm) [0x00006] in <b2f5ba339bd244a2a072fe9fd5539e2f>:0
  at MapView.Start.Start_init () [0x00021] in <0a0656103b894489b35d71dc5339306a>:0
  at MapView.Program.Main (System.String[] args) [0x00033] in <0a0656103b894489b35d71dc5339306a>:0
[ERROR] FATAL UNHANDLED EXCEPTION: System.EntryPointNotFoundException: WindowFromPoint assembly:<unknown assembly> type:<unknown type> member:(null)
  at (wrapper managed-to-native) MapView.MainViewF.WindowFromPoint(System.Drawing.Point)
  at MapView.MainViewF.PreFilterMessage (System.Windows.Forms.Message& m) [0x00020] in <0a0656103b894489b35d71dc5339306a>:0
  at System.Windows.Forms.Application.FilterMessage (System.Windows.Forms.Message& message) [0x0001f] in <b2f5ba339bd244a2a072fe9fd5539e2f>:0
  at System.Windows.Forms.Application.RunLoop (System.Boolean Modal, System.Windows.Forms.ApplicationContext context) [0x000e9] in <b2f5ba339bd244a2a072fe9fd5539e2f>:0
  at System.Windows.Forms.Application.Run (System.Windows.Forms.ApplicationContext context) [0x00011] in <b2f5ba339bd244a2a072fe9fd5539e2f>:0
  at System.Windows.Forms.Application.Run (System.Windows.Forms.Form mainForm) [0x00006] in <b2f5ba339bd244a2a072fe9fd5539e2f>:0
  at MapView.Start.Start_init () [0x00021] in <0a0656103b894489b35d71dc5339306a>:0
  at MapView.Program.Main (System.String[] args) [0x00033] in <0a0656103b894489b35d71dc5339306a>:0

The mousewheel issue likely has to do with Forms/MainView/MainViewF (near the top). I don't have Mono and I'm not absolutely positive about the __MonoCS__ flag. This bit of code (and associated stuff perhaps) allows windows to capture the mousewheel even if a control is not currently focused. Did you build against mono yourself, because if you're relying on a build against .NET well ... this is the kind of stuff that would throw ... or so it seems to me

Code: [Select]
#if !__MonoCS__
#region P/Invoke declarations
[DllImport("user32.dll")]
static extern IntPtr WindowFromPoint(Point pt);

[DllImport("user32.dll")]
static extern IntPtr SendMessage(IntPtr hWnd, int msg, IntPtr wp, IntPtr lp);
#endregion P/Invoke declarations

#region IMessageFilter
/// <summary>
/// Sends mousewheel messages to the control that the mouse-cursor is
/// hovering over.
/// </summary>
/// <param name="m">the message</param>
/// <returns>true if a mousewheel message was handled successfully</returns>
/// <remarks>https://stackoverflow.com/questions/4769854/windows-forms-capturing-mousewheel#4769961</remarks>
public bool PreFilterMessage(ref Message m)
{
if (m.Msg == 0x20a)
{
// WM_MOUSEWHEEL - find the control at screen position m.LParam
var pos = new Point(m.LParam.ToInt32());

IntPtr hWnd = WindowFromPoint(pos);
if (hWnd != IntPtr.Zero && hWnd != m.HWnd && Control.FromHandle(hWnd) != null)
{
SendMessage(hWnd, m.Msg, m.WParam, m.LParam);
return true;
}
}
return false;
}
#endregion IMessageFilter
#endif

8
Tools / Re: MAPVIEW upgrade
« on: March 02, 2024, 12:56:18 pm »
sorry i don't warantee Mono, but if you find a solution ...

9
Tools / Re: MAPVIEW upgrade
« on: January 26, 2024, 04:05:59 pm »
luuuuuuuuke !

10
Tools / Re: MAPVIEW upgrade
« on: January 17, 2024, 10:09:50 am »
I request an option for directly reading a OXC(E) terrain .rul file in MapView.
Instead of having to use the RulesetConverter initally and re-convert whenever something in the .rul file changes.

hiya, good idea,

unfortunately my flagging health is putting me behind on a bunch of stuff (already) ...

imo, Mapview should get a means of loading (user choice) "MapTilesets" -- if that were done, it'd be a good time to also put in loading a Terrain.rul file. One thing that strikes me right away is disabling a bunch of maptree stuff (so a maptree that's based on a .rul file can't be changed, as you note).

automagically changing the Mapview (global) Basepath is also something to consider (though this can already be done with the Configurator it would be a nice feature, which however necessitates a mechanism to automagically change it back ...) etc.


Personally im glad that Mv2 seems to be stable in its current state, but (for me) this would be a fairly big new feature to implement,

11
Tools / Re: Changed PC and now my maps are broken
« on: December 04, 2023, 08:39:02 pm »
if you have custom maps its gonna be hard without the old config file

I can say that if you had the maps/terrains set up in OXC/e then that has its own config files (which list terrain-order) -- Solarius et al knows more about this than i do.*

or if all u want is the stock maps configured, Mapview2 can generate a new MapTilesets.yml (but that won't recreate any custom stuff)


* oh, if you have the maps set up in a Terrains.rul file, I think Mv2 can pull that data out to create yaml for MapTilesets ... see RulesetConverter.txt and .exe

12
Tools / Re: Changed PC and now my maps are broken
« on: November 29, 2023, 10:26:09 pm »
u need the MapTilesets.yml file from the /settings folder of your old Mapview2 installation

13
Tools / Re: MAPVIEW upgrade
« on: June 03, 2023, 01:13:08 am »
Thank you for updating MapView2 your program is great.

i pass it on in spirit to Ben, and anyone who's contributed in any way: code, reports, requests

/salut

14
Help / Re: Not spawning the expected units inside the UFO?
« on: June 02, 2023, 02:50:28 pm »
I honestly don't know what the rationale is/was ... but that's the only thing i can think of (ie. it's not a bug per se)

15
Help / Re: Not spawning the expected units inside the UFO?
« on: June 02, 2023, 12:42:01 am »
yeh so i did another test with noderanks 2..5 (Soldier through Medic) (civ/scout nodes appear to be ignored for this)

the Hallucinoid terrorist spawned at Soldier node, and if no Soldier node is present then at Medic node, then Squad Leader node, then at Navigator/Commander node ...

ignoring the Terrorist2 spawnnode until all the others were set to civ/scout ...

[edit]
it looks like these lines in the hardcode are responsible:

Savegame/Node.cpp
Code: [Select]
const int Node::nodeRank[8][7] =
    // ..
    { NR_SOLDIER, NR_ENGINEER, NR_NAVIGATOR, NR_LEADER, NR_MISC1, NR_MISC2, NR_SCOUT }, //terrorist
    { NR_SOLDIER, NR_ENGINEER, NR_NAVIGATOR, NR_LEADER, NR_MISC1, NR_MISC2, NR_SCOUT }  //also terrorist

ie. terrorists spawn at Soldier nodes preferentially ... (note that those constants are based on UFO but translate to TFTD ranks, with (ufo)Engineer as (tftd)Medic, etc)

[edit2]
here's the (rewritten) table in my personal build:

Code: [Select]
const int Node::nodeRank[8u][8u]
{
    { NR_LEADER,    NR_NAVIGATOR, NR_ENGINEER,  NR_SOLDIER,  NR_MEDIC,     NR_MISC2,  NR_MISC1, NR_SCOUT }, // commander
    { NR_LEADER,    NR_NAVIGATOR, NR_ENGINEER,  NR_SOLDIER,  NR_MEDIC,     NR_MISC2,  NR_MISC1, NR_SCOUT }, // leader
    { NR_ENGINEER,  NR_LEADER,    NR_NAVIGATOR, NR_SOLDIER,  NR_MEDIC,     NR_MISC2,  NR_MISC1, NR_SCOUT }, // engineer
    { NR_MEDIC,     NR_NAVIGATOR, NR_ENGINEER,  NR_LEADER,   NR_SOLDIER,   NR_MISC2,  NR_MISC1, NR_SCOUT }, // medic
    { NR_NAVIGATOR, NR_LEADER,    NR_ENGINEER,  NR_SOLDIER,  NR_MEDIC,     NR_MISC2,  NR_MISC1, NR_SCOUT }, // navigator
    { NR_SOLDIER,   NR_ENGINEER,  NR_NAVIGATOR, NR_MEDIC,    NR_LEADER,    NR_MISC2,  NR_MISC1, NR_SCOUT }, // soldier
    { NR_MISC1,     NR_MISC2,     NR_SOLDIER,   NR_ENGINEER, NR_NAVIGATOR, NR_LEADER, NR_MEDIC, NR_SCOUT }, // terrorist1
    { NR_MISC2,     NR_MISC1,     NR_SOLDIER,   NR_ENGINEER, NR_NAVIGATOR, NR_LEADER, NR_MEDIC, NR_SCOUT }  // terrorist2
};

but it has 8 ranks in the 2nd dimension .....

Pages: [1] 2 3 ... 32