Jump to content
  • Sky
  • Blueberry
  • Slate
  • Blackcurrant
  • Watermelon
  • Strawberry
  • Orange
  • Banana
  • Apple
  • Emerald
  • Chocolate
  • Charcoal

payonel

Developer
  • Content Count

    172
  • Joined

  • Last visited

  • Days Won

    14

Posts posted by payonel

  1. it is better to think of these string functions as raw byte array methods, and our unicode methods as utf8 sequence methods

    string.len is not a count of glyphs rendered on the screen, rather it is the number of chars in the string. a utf8 sequence may be one or more chars for a single glyph

    string.sub selects a sequence of chars in a byte stream from [1, string.len]

    unicode.len can be used for all utf8 strings to measure the number of logical utf8 sequences/glyphs

    unicode.wlen measures the physical rendered width of a rendered utf8 string

    unicode.sub deals with positions of sequence sets or glyphs. these indexes are in the range of [1, unicode.len]

  2. font is rendered on each client -- the same for all gpus on all screens

    this would be a per gpu call, and we'd have to update our glyph table for all clients - which we have built in such a way for fast rendering, we'd lose some of that to do dynamic lookups

  3. repro is short for reproduce

    A good bug report provides a minimal set of steps required to reproduce the bug. A minimal set of steps also means a minimal set of dependencies. If your bug does not need survival, don't use survival, make a creative world. If your repro doesn't need multiplayer, don't use multiplayer. If your repro doesn't need other mods installed, repro with only OC installed. If your bug doesn't need default world, use a flat world.

    Here is an example repro of a made up bug:

    Quote

    Bug: Computer literally explodes

    Repro steps

    1. Using MC 1.12.2 with multimc

    2. Install Forge version 1.12 - 14.21.1.2443

    3. Install OC version OpenComputers-MC1.12.2-1.7.4.156.jar

    4. Create single player world, flat world, creative mode

    5. spawn an OC computer using /oc_sp on the ground near your character

    6. Turn on computer by crouch+right clicking the case

    7. See the computer explode before the boot screen renders any text

     

  4. i'm going to guess you have a /etc/oppm.cfg that lists oppm is installed (maybe copied from another computer?)

    and i'm going to guess you don't have a /bin/oppm.lua which should be created when you install oppm

    anyways, seems you have a mix of files needed. try removing your /etc/oppm.lua and run the install again

  5. .shrc is run as a list of shell commands, not lua code

    when you are running the file directly, the shell interpreter is guessing it is lua code, even though the extension is not .lua

    to accomplish what you want, store your lua code in a separate file, for example a file named test.lua, and in your .shrc write the line: ./test.lua (or just test)

  6. there was a regression caused by updates to JAVA that appears to have possibly broken OC in previous versions. Truth is we were likely misusing a nonblocking file handle, and we were vulnerable to this issue for a long time. But with recent java updates, this issue is causing this serious bug that you have encountered.

    We have patched our official release of OC to deal with this. You will need to do one of the follow

    1. disable bufferChanges in the oc settings. you said you did this, this is actually how to protect yourself from the bug. I suspect you actually hit the bug when bufferChanges was set to true

    or

    2. update to our latest 1.7.4 version ( https://minecraft.curseforge.com/projects/opencomputers/files )

    There is no way to recover lost data, short of your own backups. I am very sorry for this frustration I know this has caused

  7. if you set LS_COLORS (an environment variable in the shell) it'll use that as a rule for highlighting ls results

    it is a colon separated list of rules.

    {TAG}={COLOR}:{TAG}={COLOR}:{TAG}={COLOR} ... etc

    TAG can be:

    di for directory

    fi for file

    ln for symbolic link

    TAG can also be a glob rule, like *.lua

     

    COLOR  is a vt100 color code, "36" for example is the default blue dir color

     

    see /etc/profile.lua where it sets the system default for LS_COLORS

    you can change your current shell env var using `set` like `set LS_COLORS="....."`

    or you can set it via os.setenv, like I do in the /etc/profile.lua

     

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.