Giter Site home page Giter Site logo

masterplan's Introduction

Masterplan

Masterplan is an application that helps you to build D&D 4E campaigns.

You can outline your plot structure, build encounters and maps, detail your campaign world, and create custom creatures and NPCs.

Installing it

To install Masterplan, get the Masterplan.zip file from the latest release, which can be found here:

https://github.com/andyaiken/masterplan/releases/latest

Extract all the files in this zip into their own folder, and run Masterplan.exe.

Building and running it

Prerequisites You'll need to have Visual Studio installed (community edition is fine), and the Microsoft Visual Studio Installer Projects extension loaded.

To build Masterplan, open Masterplan.sln in Visual Studio and build the Masterplan project (F6).

Bear in mind that every time you build Masterplan in Visual Studio, the library files are copied from ./Libraries into the output folder, so any changes you make to these libraries won't be retained.

The other project in the solution is called Setup, which creates an installer.

Contributing to it

If you find a bug, or you think of a feature that should be in Masterplan, please add something to the GitHub Issues tab (https://github.com/andyaiken/masterplan/issues).

If you're a coder, feel free to submit pull requests to the main repo.

masterplan's People

Contributors

andyaiken avatar corun-kail avatar tomforwood avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

masterplan's Issues

Handle tiles not fitting in standard grid.

Sometimes png of maps don't exactly align to the grid - for example there is extra half or quarter tile on each side of map, which makes fitting it inside Tactical Map screen impossible without editing the image. I could not find in-program workaround in current release.

It would be very useful to have at least some of the following:

  • Allow cropping tiles when importing them.
  • Allow to move tiles pixel by pixel, instead of tile by tile.
  • Option to use fractions when setting size of the tile.
  • Some tool to scale tiles in Map Editor.

Application Crashing when trying to edit large stat block

I'm trying to edit the Beholder stat block from Monster Vault, and no matter what I do, when I make a couple of edits anywhere after changing its level, the entire application closes.

I am using the latest version of Windows 11, please let me know if I am leaving out any important information.

Event Viewer is capturing the crash and provides the following report:

Version=1
EventType=BEX64
EventTime=133458600665386507
ReportType=2
Consent=1
UploadTime=133458600668136714
ReportStatus=268435456
ReportIdentifier=3331fd6c-71d4-4b03-b2c1-0066b9510f19
IntegratorReportIdentifier=5edeec8b-b9d5-49c7-81b6-119860df51b6
Wow64Host=34404
NsAppName=Masterplan.exe
OriginalFilename=Masterplan.exe
AppSessionGuid=000059a4-0001-0078-2224-13d2e323da01
TargetAppId=W:00065fb5c6a5f4f7da95ecb56bee21dd317400000000!0000ce248637d8789499511bf2c64687e14744c35b58!Masterplan.exe
TargetAppVer=2021//07//23:22:10:52!0!Masterplan.exe
BootId=4294967295
TargetAsId=1556
UserImpactVector=808452912
IsFatal=1
EtwNonCollectReason=4
Response.BucketId=36f476dd421e4438d5bbbe3658c7fc44
Response.BucketTable=5
Response.LegacyBucketId=1566054436068392004
Response.type=4
Sig[0].Name=Application Name
Sig[0].Value=Masterplan.exe
Sig[1].Name=Application Version
Sig[1].Value=12.2.0.41725
Sig[2].Name=Application Timestamp
Sig[2].Value=60fb3e6c
Sig[3].Name=Fault Module Name
Sig[3].Value=ucrtbase.dll
Sig[4].Name=Fault Module Version
Sig[4].Value=10.0.22621.2506
Sig[5].Name=Fault Module Timestamp
Sig[5].Value=097c794c
Sig[6].Name=Exception Offset
Sig[6].Value=000000000007f61e
Sig[7].Name=Exception Code
Sig[7].Value=c0000409
Sig[8].Name=Exception Data
Sig[8].Value=0000000000000007
DynamicSig[1].Name=OS Version
DynamicSig[1].Value=10.0.22621.2.0.0.256.48
DynamicSig[2].Name=Locale ID
DynamicSig[2].Value=1033
DynamicSig[22].Name=Additional Information 1
DynamicSig[22].Value=3aec
DynamicSig[23].Name=Additional Information 2
DynamicSig[23].Value=3aec7fb8d93b34e8eaee0007e57e2bc0
DynamicSig[24].Name=Additional Information 3
DynamicSig[24].Value=cbef
DynamicSig[25].Name=Additional Information 4
DynamicSig[25].Value=cbefecd45d261b6d438aede7acaa8578
UI[2]=C:\Users\titsw\Documents\Masterplan\Masterplan.exe
LoadedModule[0]=C:\Users\titsw\Documents\Masterplan\Masterplan.exe
LoadedModule[1]=C:\WINDOWS\SYSTEM32\ntdll.dll
LoadedModule[2]=C:\WINDOWS\SYSTEM32\MSCOREE.DLL
LoadedModule[3]=C:\WINDOWS\System32\KERNEL32.dll
LoadedModule[4]=C:\WINDOWS\System32\KERNELBASE.dll
LoadedModule[5]=C:\WINDOWS\System32\ADVAPI32.dll
LoadedModule[6]=C:\WINDOWS\System32\msvcrt.dll
LoadedModule[7]=C:\WINDOWS\System32\sechost.dll
LoadedModule[8]=C:\WINDOWS\System32\RPCRT4.dll
LoadedModule[9]=C:\Windows\Microsoft.NET\Framework64\v4.0.30319\mscoreei.dll
LoadedModule[10]=C:\WINDOWS\System32\SHLWAPI.dll
LoadedModule[11]=C:\WINDOWS\SYSTEM32\kernel.appcore.dll
LoadedModule[12]=C:\WINDOWS\SYSTEM32\VERSION.dll
LoadedModule[13]=C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll
LoadedModule[14]=C:\WINDOWS\System32\USER32.dll
LoadedModule[15]=C:\WINDOWS\System32\win32u.dll
LoadedModule[16]=C:\WINDOWS\SYSTEM32\VCRUNTIME140_1_CLR0400.dll
LoadedModule[17]=C:\WINDOWS\System32\GDI32.dll
LoadedModule[18]=C:\WINDOWS\SYSTEM32\VCRUNTIME140_CLR0400.dll
LoadedModule[19]=C:\WINDOWS\SYSTEM32\ucrtbase_clr0400.dll
LoadedModule[20]=C:\WINDOWS\System32\gdi32full.dll
LoadedModule[21]=C:\WINDOWS\System32\msvcp_win.dll
LoadedModule[22]=C:\WINDOWS\System32\ucrtbase.dll
LoadedModule[23]=C:\WINDOWS\System32\IMM32.DLL
LoadedModule[24]=C:\WINDOWS\System32\psapi.dll
LoadedModule[25]=C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\mscorlib\987f639e2113a820112aca65fb12396c\mscorlib.ni.dll
LoadedModule[26]=C:\WINDOWS\System32\ole32.dll
LoadedModule[27]=C:\WINDOWS\System32\combase.dll
LoadedModule[28]=C:\WINDOWS\System32\bcryptPrimitives.dll
LoadedModule[29]=C:\WINDOWS\system32\uxtheme.dll
LoadedModule[30]=C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clrjit.dll
LoadedModule[31]=C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System\8189c864e22b05b7e00154bea8c0a08a\System.ni.dll
LoadedModule[32]=C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Drawing\f921fc7a8aa294dce4d724297269ca87\System.Drawing.ni.dll
LoadedModule[33]=C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Windows.Forms\0f4ba34cff682d26c1424f8d69b1fc39\System.Windows.Forms.ni.dll
LoadedModule[34]=C:\WINDOWS\System32\shell32.dll
LoadedModule[35]=C:\WINDOWS\SYSTEM32\windows.storage.dll
LoadedModule[36]=C:\WINDOWS\SYSTEM32\wintypes.dll
LoadedModule[37]=C:\WINDOWS\System32\SHCORE.dll
LoadedModule[38]=C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Core\62acf38f8023a408e0bccee3aab84043\System.Core.ni.dll
LoadedModule[39]=C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Configuration\38f74f65631ee235715d96510c5f240d\System.Configuration.ni.dll
LoadedModule[40]=C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Xml\66398e51746259c154d8e90cfdb3c893\System.Xml.ni.dll
LoadedModule[41]=C:\WINDOWS\SYSTEM32\profapi.dll
LoadedModule[42]=C:\WINDOWS\SYSTEM32\bcrypt.dll
LoadedModule[43]=C:\WINDOWS\SYSTEM32\CRYPTSP.dll
LoadedModule[44]=C:\WINDOWS\system32\rsaenh.dll
LoadedModule[45]=C:\WINDOWS\SYSTEM32\CRYPTBASE.dll
LoadedModule[46]=C:\WINDOWS\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_5.82.22621.2506_none_b43bab19638c9595\comctl32.dll
LoadedModule[47]=C:\WINDOWS\WinSxS\amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.22621.2506_none_57f74dcece1b5ace\gdiplus.dll
LoadedModule[48]=C:\WINDOWS\SYSTEM32\DWrite.dll
LoadedModule[49]=C:\WINDOWS\System32\MSCTF.dll
LoadedModule[50]=C:\WINDOWS\SYSTEM32\textinputframework.dll
LoadedModule[51]=C:\WINDOWS\System32\OLEAUT32.dll
LoadedModule[52]=C:\WINDOWS\SYSTEM32\CoreMessaging.dll
LoadedModule[53]=C:\WINDOWS\SYSTEM32\CoreUIComponents.dll
LoadedModule[54]=C:\WINDOWS\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.22621.2506_none_270c5ae97388e100\comctl32.dll
LoadedModule[55]=C:\WINDOWS\System32\TextShaping.dll
LoadedModule[56]=C:\WINDOWS\SYSTEM32\WindowsCodecs.dll
LoadedModule[57]=C:\WINDOWS\System32\clbcatq.dll
LoadedModule[58]=C:\Windows\System32\ieframe.dll
LoadedModule[59]=C:\Windows\System32\USERENV.dll
LoadedModule[60]=C:\Windows\System32\WINHTTP.dll
LoadedModule[61]=C:\Windows\System32\iertutil.dll
LoadedModule[62]=C:\WINDOWS\SYSTEM32\sxs.dll
LoadedModule[63]=C:\WINDOWS\system32\dataexchange.dll
LoadedModule[64]=C:\WINDOWS\system32\twinapi.appcore.dll
LoadedModule[65]=C:\WINDOWS\SYSTEM32\msIso.dll
LoadedModule[66]=C:\WINDOWS\SYSTEM32\PROPSYS.dll
LoadedModule[67]=C:\WINDOWS\SYSTEM32\urlmon.dll
LoadedModule[68]=C:\WINDOWS\SYSTEM32\srvcli.dll
LoadedModule[69]=C:\WINDOWS\SYSTEM32\netutils.dll
LoadedModule[70]=C:\Windows\System32\mshtml.dll
LoadedModule[71]=C:\Windows\System32\SspiCli.dll
LoadedModule[72]=C:\WINDOWS\SYSTEM32\powrprof.dll
LoadedModule[73]=C:\Windows\System32\wkscli.dll
LoadedModule[74]=C:\WINDOWS\SYSTEM32\UMPDC.dll
LoadedModule[75]=C:\Windows\System32\srpapi.dll
LoadedModule[76]=C:\WINDOWS\SYSTEM32\WLDP.DLL
LoadedModule[77]=C:\WINDOWS\SYSTEM32\virtdisk.dll
LoadedModule[78]=C:\WINDOWS\system32\msimtf.dll
LoadedModule[79]=C:\Windows\System32\dxgi.dll
LoadedModule[80]=C:\WINDOWS\SYSTEM32\dxcore.dll
LoadedModule[81]=C:\WINDOWS\SYSTEM32\Secur32.dll
LoadedModule[82]=C:\WINDOWS\SYSTEM32\MLANG.dll
LoadedModule[83]=C:\WINDOWS\SYSTEM32\WININET.dll
LoadedModule[84]=C:\WINDOWS\SYSTEM32\directxdatabasehelper.dll
LoadedModule[85]=C:\Windows\System32\uiautomationcore.dll
LoadedModule[86]=C:\Windows\System32\d2d1.dll
LoadedModule[87]=C:\Windows\System32\d3d11.dll
LoadedModule[88]=C:\WINDOWS\SYSTEM32\d3d10warp.dll
LoadedModule[89]=C:\Windows\System32\msls31.dll
LoadedModule[90]=C:\Windows\System32\jscript9.dll
LoadedModule[91]=C:\WINDOWS\SYSTEM32\edputil.dll
LoadedModule[92]=C:\Windows\System32\Windows.ApplicationModel.dll
LoadedModule[93]=C:\Windows\System32\Windows.System.Launcher.dll
LoadedModule[94]=C:\Windows\System32\msvcp110_win.dll
LoadedModule[95]=C:\WINDOWS\SYSTEM32\windows.staterepositorycore.dll
LoadedModule[96]=C:\WINDOWS\SYSTEM32\ntmarta.dll
LoadedModule[97]=C:\Windows\System32\DiagnosticDataSettings.dll
LoadedModule[98]=C:\WINDOWS\SYSTEM32\coreprivacysettingsstore.dll
LoadedModule[99]=C:\WINDOWS\System32\CRYPT32.dll
LoadedModule[100]=C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\Accessibility\7346e7a81a887288ccdc3d79f17a7f6a\Accessibility.ni.dll
LoadedModule[101]=C:\WINDOWS\SYSTEM32\oleacc.dll
LoadedModule[102]=C:\WINDOWS\SYSTEM32\WINMM.dll
LoadedModule[103]=C:\WINDOWS\SYSTEM32\AudioSes.DLL
LoadedModule[104]=C:\Program Files\Common Files\microsoft shared\ink\tiptsf.dll
State[0].Key=Transport.DoneStage1
State[0].Value=1
OsInfo[0].Key=vermaj
OsInfo[0].Value=10
OsInfo[1].Key=vermin
OsInfo[1].Value=0
OsInfo[2].Key=verbld
OsInfo[2].Value=22621
OsInfo[3].Key=ubr
OsInfo[3].Value=2715
OsInfo[4].Key=versp
OsInfo[4].Value=0
OsInfo[5].Key=arch
OsInfo[5].Value=9
OsInfo[6].Key=lcid
OsInfo[6].Value=1033
OsInfo[7].Key=geoid
OsInfo[7].Value=244
OsInfo[8].Key=sku
OsInfo[8].Value=48
OsInfo[9].Key=domain
OsInfo[9].Value=0
OsInfo[10].Key=prodsuite
OsInfo[10].Value=256
OsInfo[11].Key=ntprodtype
OsInfo[11].Value=1
OsInfo[12].Key=platid
OsInfo[12].Value=10
OsInfo[13].Key=sr
OsInfo[13].Value=0
OsInfo[14].Key=tmsi
OsInfo[14].Value=222428166
OsInfo[15].Key=osinsty
OsInfo[15].Value=3
OsInfo[16].Key=iever
OsInfo[16].Value=11.1.22621.0-11.0.1000
OsInfo[17].Key=portos
OsInfo[17].Value=0
OsInfo[18].Key=ram
OsInfo[18].Value=32546
OsInfo[19].Key=svolsz
OsInfo[19].Value=930
OsInfo[20].Key=wimbt
OsInfo[20].Value=0
OsInfo[21].Key=blddt
OsInfo[21].Value=220506
OsInfo[22].Key=bldtm
OsInfo[22].Value=1250
OsInfo[23].Key=bldbrch
OsInfo[23].Value=ni_release
OsInfo[24].Key=bldchk
OsInfo[24].Value=0
OsInfo[25].Key=wpvermaj
OsInfo[25].Value=0
OsInfo[26].Key=wpvermin
OsInfo[26].Value=0
OsInfo[27].Key=wpbuildmaj
OsInfo[27].Value=0
OsInfo[28].Key=wpbuildmin
OsInfo[28].Value=0
OsInfo[29].Key=osver
OsInfo[29].Value=10.0.22621.2715.amd64fre.ni_release.220506-1250
OsInfo[30].Key=buildflightid
OsInfo[31].Key=edition
OsInfo[31].Value=Professional
OsInfo[32].Key=ring
OsInfo[32].Value=Retail
OsInfo[33].Key=expid
OsInfo[33].Value=MD:283BAEF,ME:25762F0,ME:27B9BC4,ME:28279A6
OsInfo[34].Key=fconid
OsInfo[34].Value=18299130,0,2,0;19193644,0,2,0;19193777,0,2,0;19194231,0,2,0;19194292,0,2,0;19194297,0,0,0;19195476,0,2,0;19195493,0,0,0;19638787,0,2,0;23531064,2,2,0;23562335,2,2,0;23563673,2,2,0;32862274,0,2,1;32862275,0,2,1;35681102,0,1,0;36803287,0,2,1;36803295,0,2,0;36803303,0,2,1;38277973,0,1,0;38859191,0,2,0;39263329,1,2,0;39281392,0,2,0;40025975,0,1,0;40616880,0,1,0;40733296,0,2,1;40883769,0,1,0;40981503,0,1,0;41135193,0,1,1;41137130,0,1,0;41249924,0,2,0;41313221,0,2,0;41342175,0,1,0;41655236,0,2,0;41772259,0,2,0;41799415,0,2,1;42052423,0,2,0;42092123,0,2,1;42105254,0,2,0;42235377,0,2,1;42921948,0,2,0;42922989,0,2,1;43133808,1,2,1;43203978,0,2,1;43572857,0,2,1;43698028,0,2,0;43772553,0,1,0;43844371,0,1,1;43978769,0,1,1;43995105,0,2,1;43995122,0,2,0;44325080,0,1,0;44521793,0,1,0;44552141,0,1,0;44774051,0,2,0;44776738,0,1,0;44860385,0,2,1;45113694,0,2,1;45185354,0,2,0;45187531,0,0,0;45232725,0,0,0;45786062,0,2,1;46251949,0,2,0;46551074,0,1,1;46557400,0,1,1;46619189,0,2,1;46752087,0,2,0
OsInfo[35].Key=containerid
OsInfo[36].Key=containertype
OsInfo[37].Key=edu
OsInfo[37].Value=0
OsInfo[38].Key=servicinginprogress
OsInfo[38].Value=0
OsInfo[39].Key=featureupdatependingreboot
OsInfo[39].Value=0
FriendlyEventName=Stopped working
ConsentKey=BEX64
AppName=Masterplan
AppPath=C:\Users\<user>\Documents\Masterplan\Masterplan.exe
NsPartner=windows
NsGroup=windows8
ApplicationIdentity=E8B8A2E6D8D225B066C66D80D8EF2464
MetadataHash=-1559815995

Dice Roller - Odds Button

Pressing the Odds button from the Dice Roller freezes, and eventually crashes the application.

It is dependent on the size of the die. It starts to slow down at 9-10 d6 and crashes at 11-12 d6. With 6 d20 it slows down and crashes at 7-8 d20. With a d4 it starts to slow down at 12-14 d4 and crashes at 15d4. Also when the die quantity is about to crash the app, the graph displayed does not conform to a bell curve (I think it has to do with the window size)

image

image

image

Improvements to Groups in Encyclopedia

Few features I am missing in Encyclopedia:

  • When editing group in encyclopedia I am unable to filter in links window. This is annoying when working with bigger encyclopedias - dozen entries, and it's already hard to find one I am looking for.
  • When editing group in encyclopedia I am can see links, but not their categories. There is already second column, so why not use it. Also filtering would be nice too.
  • Ability to select group from within encyclopedia entry.
  • Hyperlinks from headers in given group, to exact entries it refers.

Can't save project, claims write protection on drive

I spent part of last evening working on a sizeable project in Masterplan. When I went to save my progress, I got this error message:

image

This message comes up regardless of where I choose to save it, or what I give it for a file name.

Link to existing Encyclopedia entries on regional map

Locations on Regional Map can contain encyclopedia entries. However when editing location in regional map screen, I can only create new entries - clicking No in dialog, results in nothing happening.

I think that doing following steps:

Open Regional Map
Select map. create new location.
Click Encyclopedia Entry.
Choose No in the dialog window, asking if we want to create new encyclopedia entry associated with location.

should result in opening of new window,which allows us to browse encyclopedia entries, and/or exit this entirely.

Adding this would cut a lot of unnecessary copy-paste and linking entries for example when starting with drafts of some locations, and only after this adding maps.

Another nice to have feature would be

  • Ability to link to locations from within the encyclopedia
  • Ability to link encyclopedia to multiple regional maps. Like metropolis being linked to the big continent scale map, and regional map.

Git/Project question

Hello,
as i said a few days ago, i'm working on I18N updates.
As you know, all the project files are modified with this update...

Do you prefer

  • a single pull request with a single commit
  • a single pull request with a commit for each file i update
  • a pull request for each file

Up to now i have updated more than 290 files ...

HTML Encounter Export to have 300px width again

It would be useful to put the 300px fixed width back in to the HTML export, this resolves well for printing and display. Currently the output is set to 99% instead and fills a full browser window.

Tiles in the map editor are too small to make out

I really like the simplicity of the map editor - I like to use Dungeondraft myself but that's a lot more in depth. I wanted to give something to my DM to have something simple to throw things together, and this is perfect.

However, the thumbnails are absolutely tiny. They could be nearly twice the size as-is with all the white space around them.

I'd also consider making it easier to shove in tiles from PNGs if possible.

Thank you.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.