Giter Club home page Giter Club logo

discmapper's Introduction

iLP development

▪  ▄▄▌   ▄▄▄·    ·▄▄▄▄  ▄▄▄ . ▌ ▐·▄▄▄ .▄▄▌         ▄▄▄·• ▌ ▄ ·. ▄▄▄ . ▐ ▄ ▄▄▄▄▄
██ ██•  ▐█ ▄█    ██▪ ██ ▀▄.▀·▪█·█▌▀▄.▀·██•  ▪     ▐█ ▄█·██ ▐███▪▀▄.▀·•█▌▐█•██  
▐█·██▪   ██▀·    ▐█· ▐█▌▐▀▀▪▄▐█▐█•▐▀▀▪▄██▪   ▄█▀▄  ██▀·▐█ ▌▐▌▐█·▐▀▀▪▄▐█▐▐▌ ▐█.▪
▐█▌▐█▌▐▌▐█▪·•    ██. ██ ▐█▄▄▌ ███ ▐█▄▄▌▐█▌▐▌▐█▌.▐▌▐█▪·•██ ██▌▐█▌▐█▄▄▌██▐█▌ ▐█▌·
▀▀▀.▀▀▀ .▀       ▀▀▀▀▀•  ▀▀▀ . ▀   ▀▀▀ .▀▀▀  ▀█▄▀▪.▀   ▀▀  █▪▀▀▀ ▀▀▀ ▀▀ █▪ ▀▀▀ 

Hi there 👋 I'm Ian 👨‍💻

inveterate tinkerer

💻 My Workspace

🔭 I’m currently working on taviMUD.

🌱 I’m currently learning:


📫 How to reach me: [email protected]

📃 IT Resume

Education

  • 📖 CIS Coursework
    📆 1994 - 1995
    📍 Humboldt State University - Arcata, CA, USA

Experience

  • 👨‍💻 Wordpress Astra Developer
    📆 2020 - present
    📍 iLP development - NV, USA
  • 👨‍💻 Mudlet Package Developer
    📆 2020 - present
    📍 discMapper & Procedural Realms Script - NV, USA
  • 👨‍💻 Wordpress Genesis Developer
    📆 2013 - 2020
    📍 iLP development - NV, USA
  • 👨‍💻 concrete5 Developer
    📆 2010 - 2013
    📍 iLP development - NV, USA

  • 👨‍💻 Bot Net Administrator
    📆 2001 - 2003
    📍 Eggdrop - DALnet / IRC Highway, IRC

  • 👨‍💻 Founder / SOp
    📆 2001 - 2003
    📍 HBO Original Series [HOS] - DALnet / IRC Highway, IRC

  • 👨‍💻 Technical Manager
    📆 1999 - 2000
    📍 Human Computer - CA, USA

  • 👨‍💻 Administrator
    📆 1998 - 1999
    📍 InlandData ISP - CA, USA
  • 👨‍💻 Computer Technician
    📆 1997 - 1999
    📍 Human Computer - CA, USA

  • 👨‍💻 SysOp
    📆 1994 - 1996
    📍 Digital Buddha BBS - CA, USA

  • 👨‍💻 ircII Bot Developer
    📆 1991 - 1993
    📍 LAVAtech - EFnet, IRC

  • 👨‍💻 SysOp
    📆 1985 - 1989
    📍 Warez 'R' Us BBS - CA, USA

Affiliations

CSDb Profile

  • HBO Original Series (HOS)
  • The Eternal Force (TEF)
  • Weird Hell-Bent Operators (WHO)
  • World Pirate Leaque (WPL)
📦 Projects
Name Description Download
Disclaim Archive Humboldt County's Furious Alternative Trio disclaim
PRS Procedural Realms Script for Mudlet PRS

discmapper's People

Contributors

allcontributors[bot] avatar atari2600tim avatar ilpdev avatar imgbotapp avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

discmapper's Issues

Center README badges section

markdown shortcut style is incompatible with HTML styling, so it remains left-aligned. will need to deconstruct the markdown shortcuts and replace them with full hrefs.

Deprecated: `name_search`

Similarly, there's no reason to include name_search anymore, correct? It doesn't appear to be called anywhere else.

map.sanitizeRoomName throws error in console when called by `onNewRoom` handler

Describe the bug

Possible bug. Occurred in console while debugging uninstall feature. Possibly result of having both generic_mapper and discMapper loaded simultaneously, so sanitizeRoom breaks with GMCP room name detection.

image

To Reproduce
Uncertain.

Expected behavior
no error!

Environment (please complete the following information):

  • discMapper Version: 0.3.2
  • Mudlet Version: 4.9.1
  • OS: win10

Git Updater

Dave made a cool auto-updater for packages. Not sure of its status since January 2020, but it might be something to consider as replacement for Jor`Mox's script updating that I suspect has twice erased the discMapper script in my local profiles.

Git Updater

Good idea? Bad idea?

Bug: GMCP core support not enabled for active session during installation

Describe the bug
It's not really a bug, as much as absent/unrequired feature in generic_mapper. Room names and exits are unavailable if discMapper is installed after connecting to the game server, because GMCP core support handshake is triggered by the login sequence, and gmcp.room.info data is called by "look" or movement.

To Reproduce
Steps to reproduce the behavior:

  1. Create new profile
  2. Install discMapper
  3. Issue look
  4. Issue map basics, observe red x's
  5. ...GMCP events is table empty

Expected behavior
image

Environment (please complete the following information):

  • discMapper Version: 0.3.2-beta/develop
  • Mudlet Version: 4.9.1
  • OS: win10

Bug: `check_version` result remains inaccurate

Describe the bug
While the versions library file is now present in the correct folder, check_version is till calculating the scrip as 17 versions behind.

To Reproduce
Steps to reproduce the behavior:

  1. Install mudlet'
  2. Create clean profile
  3. Uninstall generic_mapper
  4. Install discMapper
  5. Connect to mud

Expected behavior
result of 0 - discMapper is current version matching local and remote versions.lua

Environment (please complete the following information):

  • discMapper Version: c0.3.1
  • Mudlet Version: 4.9.1
  • OS: win10

**Additional Context
I could have sworn that I resolved this last night, but the fiasco with github today reeked all manner of havoc on the v0.3.1-beta hot fix. Apparently, I will need to verify additional incorrect or missing commits by doing a file diff with an earlier version on the XML and looking at the save pathing and versions.lua all over again. ugh.

Add old GMCP Enabled Script

This is the XML for my old GMCP Enabled script. It's technically more accurate that what is in discMapper currently, because it only runs when the sysProtocolEnabled event fires and the protocol is, in fact, GMCP. I'm just too tired ATM to mess with it.

<Script isActive="no" isFolder="no">
	<name>dsGMCPEnabled</name>
	<packageName></packageName>
	<script>function dsGMCPEnabled(_, protocol)
		if protocol == "GMCP" then
		map.echo("  - GMCP Enabled")
	end
end</script>

<eventHandlerList>
	<string>sysProtocolEnabled</string>
</eventHandlerList>

GMCP Core Support Unavailable

Describe the bug
No GMCP data available for use by script.

To Reproduce
Intermittent?!? This may be due to my other profile with core support trigger enabling core supports. When I then load the new profile and drop link on the game from the old profile, the game continues to send GMCP when it otherwise would not have.

Steps to reproduce the behavior:

  1. Open a new profile
  2. Install discMapper 0.1.2-alpha
  3. Connect to game
  4. Look (to fire onNewRoom trigger)
  5. See error...
    image
  6. Open edbee
  7. Click Statistics
  8. Observe empty GMCP table...
    image

Expected behavior
GMCP core supports should be sent by game and available to discMapper in the GMCP table.

Screenshots
See above.

Desktop (please complete the following information):

  • OS: win10

Licensing Identity

  • Do I want to link my professional identity to this project?
  • Will doing so introduce undue potential for unethical dual relationships?
  • Can I get around this by filing another Fictitious Firm Name (DBA) on my existing LLC?

Separate README image asset from source code

- [ ] Rename discMapper_logo.png as discMapper.png

  • Move the file to root (the image isn't included in the script, so it needs to get out of /src)
  • Update README image location and link URLs

Deprecated: `map.prompt.room` ???

Should we go through and replace map.prompt.room with gmcp.room.info.name everywhere or define it once and for all at the beginning? It's not a local variable so the user can alter it as intended, but would there ever be a reason to do so? discMapper sets the room name based on what the game sends rather than misidentified text or location as previously.

`quick_start` doesn't recognize room and exit detection

Describe the bug
A clear and concise description of what the bug is.

To Reproduce

  1. Install discMapper
  2. Connect
  3. Type map debug
  4. Type find prompt
  5. look and observe functional room and exit detection
  6. Type map basics
  7. See error

Expected behavior
Checkmarks for room and exits, allowing start mapping to be called.

Desktop (please complete the following information):

  • Version 4.8+

Additional context
Clearly room name and exits are being detected accurately, but our hooking into the move map function seems to be circumventing passing the data to map.currentName, map.currentExits and, I suspect, there is some relation between this bug, get_room_info, how setID, setArea, etc are used.

Deprecated: `sanitizeRoomName`

As far as I can see, there's really no need for trimming lines from Discworld's ASCII map. Even if the user has options display set to left on the game, discMapper is pulling room titles directly from GMCP now - there's never going to be anything to sanitize. If it's not called anywhere else, we should just remove the whole thing rather than comment it out, right?

Map Labels

Consider implementing labeling for the mapper (i.e., Fenton's labelRoomName that was never finished). Fenton was trying to make the mapper automatically label General Store, Shop, Custom, and Food environments only.

`sysInstall` handler fails to call global 'uninstallGMS' (a nil value)

Describe the bug

image

To Reproduce
Steps to reproduce the behavior:

  1. Clean profile
  2. Connect
  3. Install discMapper
  4. See error in console

Expected behavior
sysinstall event handler should pass discMapper as package name to uninstallGMS function.

Environment (please complete the following information):

  • discMapper Version: /feature/uninstall-generic_mapper
  • Mudlet Version: 4.9.1
  • OS: win10

`check_version` retains GMS text

Describe the bug
check_version retains GMS text

To Reproduce
run check_version

Expected behavior
same but script-specific text

Screenshots
image

Environment (please complete the following information):

  • discMapper Version: v0.3.0-beta
  • Mudlet Version: 4.9.1
  • OS: win10

Hotfix for IRE remnants

The initial bug thrown by v0.1.0 is due to a reference call to an IRE mapper routine that we forgot to take out. I have a bug fix already in another profile. Just need to find it, and apply it to the development branch.

Duplicate Move Fail text matching

It looks like we added an exact match for What? that Discworld sends sometimes for failed moves. The regex match already exists, but the question mark at the end is a special character and needs to be escaped.

generic_mapper has whale legs

Describe the bug
generic_mapper does not clean up after itself during uninstallation; It leaves the files in /map downloads/. discMapper's check_update function incorrectly populates the versions table from the vestigial versions.lua of the generic_mapper package that Mudlet installs by default to all new profiles.

To Reproduce
Steps to reproduce the behavior:

  1. Create new profile
  2. Uninstall generic_mapper
  3. Install discMapper
  4. Connect to Discworld

Expected behavior
Nothing. check_version should find pos = 0 on first run because discMapper pre-releases do not include a local versions.lua file.

Screenshots
image

Environment (please complete the following information):

  • discMapper Version: 0.3.0-beta
  • Mudlet Version: 4.9.1
  • OS: win10

Consider Implementing CI

semantic-release seems really helpful, but requires some sort of workflow. right now, it might be best for me to do things manually to better understand what I might want from an automated workflow with CI.

Create development branch

It's getting to be that time to delve back into the code, but this time I'll be keeping track of the changes and outcomes.

Standardize XML Module Name

Including the version number in the module's filename was intended to differentiate among versions, but it turns out that the version number in the filename cannot then be easily advanced without uninstalling, renaming, and then reinstalling the module. Renaming the folders in the edbee tree is probably an easier way of keeping track of the version number inside Mudlet for now. Maybe just 'discMapper' even though this will have redundancy in at least one case.

`check_version` on connect gets buried in scroll

Describe the bug
running check_version on connect seems to have the potential to get buried in scroll during the login process. A novice user is likely not to notice the opportunity to run map update and persist with an outdated script unnecessarily.

To Reproduce
Steps to reproduce the behavior:

  1. Create new profile
  2. Uninstall generic_mapper
  3. Install discMapper
  4. Connect to Discworld
  5. Scroll back in buffer

Expected behavior
Since discMapper is game-specific, maybe we can just have it triggered instead when the character inventory is regenerated.

Screenshots
image

Environment (please complete the following information):

  • discMapper Version: 0.3.0-beta
  • Mudlet Version: 4.9.1
  • OS: win10

Start with generic_mapper.xml???

Maybe I should rewind the repo to begin with the original generic_mapper, then add the 5/24 version that @vadi2 and I made. Will it show the changes? I bet it will, and that will be good for my learning.

Add one-liner install command to README Install section

See https://wiki.mudlet.org/w/Mudlet_Packages

As a script writer, you can also allow people to just copy/paste a command into Mudlet to install your package - super easy. Here's a demo, paste this into Mudlet:

lua function d(a,b)if not b:find("oci",1,true)then return end installPackage(b)os.remove(b)cecho("<lime_green>Package installed!\n")end registerAnonymousEventHandler("sysDownloadDone","d")downloadFile(getMudletHomeDir().."/oci.mpackage","http://www.mudlet.org/wp-content/files/one-click-install-demo.mpackage")

To get such a line for your script, do the following:

  1. Copy/paste code below to https://mothereff.in/lua-minifier

function d(_, f)
  if not f:find("oci", 1, true) then return end
 
  installPackage(f)
  os.remove(f)
  cecho("<lime_green>Package installed!\n")
end
 
registerAnonymousEventHandler("sysDownloadDone", "d")

downloadFile(getMudletHomeDir()..(URL:ends("xml") and "/oci.xml" or "/oci.zip"), URL)
  1. replace the URL (the http://www.mudlet.org/wp-content/files/one-click-install-demo.mpackage bit) with your .zip, .mpackage, or .xml URL

  2. find & replace all semicolons (;) with spaces ( ) in the minified version

  1. prefix it with 'lua ' and paste it into Mudlet!

note: requires Mudlet 3.0 to work.

discMapper_logo.png is too large

Reduce production file size to <100k. The blank .xcf can be stored in some src folder or something? ./src/images? Or, is src only for code, and not production assets? /ref/images.

Set Default Room Color

I know that this might be more of a UI issue, but I'm going to set the default room color to a dark grey for streets, since the other rooms are colored with styleRooms.

Automate generic_mapper Uninstall Process

Is your feature request related to a problem? If so, please describe.
If a user was previously using generic_mapper, the package itself needs to be uninstalled prior to installation of discMapper in order to avoid conflicts. generic_mapper's "whale legs" can stay in ../map downloads to preserve the user's prior saved data.

Describe the solution you'd like
Automated generic_mapper package uninstall during discMapper installation
Notify user of "whale legs" location of their old saved data - they may wish to reference prior configs.lua, map_save.dat, map.dat, and any changes they saved to generic_mapper.xml.

Describe alternatives you've considered
Manual uninstall is the current requirement for the pre-release module

sanitizeRoomName is receiving an empty key onNewRoom

This is another bug that did not show up until I loaded the scripts that @vadi2 and I made into a clean profile. I can't recall how I resolved this previously. I think it needs to be passed gmcp.room.info.name instead of whatever it's receiving that was associated with the old generic_mapper room name detection.

I don't think we need to sanitize room names anymore to begin with because the script is now pulling roomName from GMCP data. There might be other places that call sanitizeRoomName, so I'm not yet certain if it's safe to remove the entire function or not yet. If nothing else uses it, then we might as well remove it.

[  LUA  ] - error in event handler for onNewRoom:
             <[string "Script: discMapper"]:2309: map.sanitizeRoomName: bad argument #1 expected room title, got nil!>

`safeDelete` script

Is your feature request related to a problem? If so, please describe.
Unclear what was the problem that Jor'Mox was addressing with safeDelete, and if it was resolved. Sounds like the exits stubs of attached rooms are deleted, when deleting a room.

Describe the solution you'd like
Don't delete the exit stubs when a room is deleted.

Describe alternatives you've considered
Jor'mox provided an alternative as a menu addition called [safeDelete])https://forums.mudlet.org/viewtopic.php?p=44771&sid=baf30e91ed14bff7d61c48e75af6fa82#p44771)

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.