TaurusBos Game

This is where I will update my Work and Features as I finished up my TaurusBos Game.

Features Wish List:

  1. Roman Numerals
    a. Lives Call up and Count Down
    b. Word length
    c. TaurusBos Count (BullCow Count)
  2. Guess more than one word before you win, but each lives will be set with each new word.
  3. Maybe a word hint if type in “hint” since it is in Latin.
  4. maybe have difficulty levels, but not likely.

I got the Roman Numerals to work. It took a bit of time and thinking to get it work. It was overly complex at the start, and then whittled right down to a header file and a member variable.

Numerals: A TArray HeaderFile List, like HiddenWordsList, called RomanNumerals.h.

Word Count: Was easy enough. My member variable simply called up the header file (Numerals) and set its array to HiddenWord.Len().

Lives: This took the longest because I wanted it to display the Numerals AND count down. The idea seemed simple enough: subtract the stored array element number. After much mucking around, in the end I used a member Variable (LivesNumerals) and initialized it to Numerals [Lives]. Then I placed a second one below “–lives” in the Process Guess section. It did not seem to count down if I did not call it up again in the ProcessGuess function, even though its array was set to “Lives”, which was decremented in this section.

Issues:

  1. Lives:

You might be thinking at this point, “wait, why don’t you have Lives-1? Will you not be always one numeral ahead of the count?”

Yes, it is true, and I did have a -1, since my element 0 was Roman Numeral “I”. However, I came across an issue. It was based off of Lives, but if you lose the game when it becomes “0”, the TArray is now element -1! The whole game crashes.

My fix? Bump up my numerals by one instead of creating a whole if or for statement. Numeral “I” is now be in element 1 spot.

  1. Hierarchy:

I discovered early on issues with my Hierarchy. I was getting “0” lives and “0” letter counts. Then When I tried changing my numbers to numerals I got nothing. Why? My declared and defined variables in SetupGame came after my PrintLine’s.

Here is my code thus far:
CPP

#include "BullCowCartridge.h"
#include "LatinWordList.h"
#include "RomanNumerals.h"



void UBullCowCartridge::BeginPlay() 
{
   
    Super::BeginPlay();
    
      Isograms = GetValidWords(Verba);
   
    SetupGame();
}

void UBullCowCartridge::OnInput(const FString& PlayerInput) 
{  
    if (bGameOver == true)
    {
        ClearScreen();
        SetupGame();
        return;   
        // Quit Game?
    } 
    else 
    {
        ProcessGuess(PlayerInput);
        return;
    }
}  


void UBullCowCartridge::SetupGame()
{
    HiddenWord = Isograms[FMath::RandRange(0, Isograms.Num() -1)];
    WordNumerals = Numerals [HiddenWord.Len()];

    Lives = HiddenWord.Len();
    LivesNumerals = Numerals[Lives];
   
    bGameOver = false; 
       
    PrintLine(TEXT("Salve! Welcome to TaurusBos!"));
    PrintLine(TEXT("Guess the %s letter word!"), *WordNumerals); 
    PrintLine(TEXT("The most common Latin letter endings in this list are:"));
    PrintLine(TEXT("a, o, e, i, t, r, m, s. "));
    PrintLine(TEXT("you have %s lives."), *LivesNumerals);
       
    PrintLine(TEXT("The Hidden word is: %s."), *HiddenWord);
    PrintLine(TEXT("Type in your guess and \npress enter to moove on..."));
}


void UBullCowCartridge::EndGame()
{
    bGameOver = true; 
    PrintLine(TEXT("\nPress Enter to play again..."));
}


void UBullCowCartridge::ProcessGuess(const FString& Guess) 
{
    if (Guess == HiddenWord)
        {
            ClearScreen();
            PrintLine(TEXT("Veni, Vidi, Vici! \n You Win!"));
            EndGame(); 
            return;
           
        }
   
 PrintLine(TEXT("You lost a Life!"));
     --Lives;
     LivesNumerals = Numerals[Lives];
 
     
       
    if (Guess.Len() != HiddenWord.Len())
    {
        PrintLine(TEXT("The hidden word is %s letters long."), *WordNumerals);
        
        return;   
    }
     
    if (!IsIsogram(Guess))
    {
        PrintLine(TEXT("You have repeating letters, guess again!"));
        return;
    }
    
    if (Lives <= 0)     
    
    {
        ClearScreen();
        PrintLine(TEXT("You have no lives left!"));
        PrintLine(TEXT("The hidden word was: %s."), *HiddenWord);
        EndGame();
        return;
    }
    // Show the player BUlls and Cows
    FTaurusBosCount Score = GetTaurusBos(Guess);

    PrintLine(TEXT("You have %i Taurus and %i and Bos"), Score.Taurus, Score.Bos);
    PrintLine(TEXT("Guess again, you have %s lives left."), *LivesNumerals);
}

bool UBullCowCartridge::IsIsogram(const FString& Word) const
{

// Instructors Code
    for (int32 Index = 0; Index < Word.Len(); Index++)
    {
            for (int32 Comparison = Index + 1; Comparison < Word.Len(); Comparison++)
        {
            if (Word[Index] == Word[Comparison])
            {
                return false;
            }
            
        }
    }
    return true;
   
}

TArray<FString> UBullCowCartridge::GetValidWords(const TArray<FString>& WordList) const
{
     TArray<FString> ValidWords; //Making the empty storage unit: the variable. 


    for (const FString& Word : WordList )
    {  
        if (Word.Len() >= 3 && Word.Len() <= 8 && IsIsogram(Word) )//Checks specific word 
        {
            ValidWords.Emplace(Word);            
        }
    }

    return ValidWords;
}

FTaurusBosCount UBullCowCartridge::GetTaurusBos(const FString& Guess) const

{
    FTaurusBosCount Count;

    // For every index Guess is the same as Index of the HiddenWord, BullCount++
    //If not a bull, was it a cow? If yes, CowCount++

    for (int32 GuessIndex = 0; GuessIndex < Guess.Len(); GuessIndex++)
    {
        if  (Guess[GuessIndex] == HiddenWord[GuessIndex])
        {
            Count.Taurus++;
            continue;   
        }
        for (int32 HiddenIndex = 0; HiddenIndex < HiddenWord.Len(); HiddenIndex++)
        {
            if  (Guess[GuessIndex] == HiddenWord[HiddenIndex])
            {
                Count.Bos++;
                break;
            }
        }

        
        
    }

    return Count;
}

HeaderFile:

// Fill out your copyright notice in the Description page of Project Settings.

#pragma once

#include "CoreMinimal.h"
#include "Console/Cartridge.h"
#include "BullCowCartridge.generated.h"

struct FTaurusBosCount
{
	int32 Taurus = 0;
	int32 Bos = 0;
	// initializing to 0 since they will be nothing else at the start of the game. 
	// also protects us from garbage code filling up the space. 
};

UCLASS(ClassGroup=(Custom), meta=(BlueprintSpawnableComponent))
class BULLCOWGAME_API UBullCowCartridge : public UCartridge
{
	GENERATED_BODY()

	public:
	virtual void BeginPlay() override;
	virtual void OnInput(const FString& Input) override;
	void SetupGame();
	void EndGame();
	void ProcessGuess(const FString& Guess); // can ignore the variable names, but useful documentation.
	bool IsIsogram(const FString& Word) const;
	TArray<FString> GetValidWords(const TArray<FString>& WordList) const;  
	FTaurusBosCount GetTaurusBos(const FString& Guess) const;

	// Your declarations go below!
	private:
	FString HiddenWord;
	int32 Lives; 
	bool bGameOver;
	TArray<FString> Isograms;
	FString LivesNumerals;
	FString WordNumerals;
};

RomanNumerals.h

#pragma once 
#include "CoreMinimal.h"

const TArray<FString> Numerals =

{
    TEXT("0"),
    TEXT("I"),
    TEXT("II"),
    TEXT("III"),
    TEXT("IV"),
    TEXT("V"),
    TEXT("VI"),
    TEXT("VII"),
    TEXT("VIII"),
    TEXT("IX"),
    TEXT("X"),
    TEXT("XI"),
    TEXT("XII"),
    TEXT("XIII"),
    TEXT("XIV"),
    TEXT("XV"),
    TEXT("XVI")
};

LatinList

#pragma once
#include "CoreMinimal.h"

//ForLatin
const TArray<FString> Verba =

{
TEXT("ut"),
TEXT("sum"),
TEXT("eius"),
TEXT("quod"),
TEXT("ipse"),
TEXT("fuit"),
TEXT("nam"),
TEXT("in"),
TEXT("sunt"),
TEXT("cum"),
TEXT("illi"),
TEXT("esse"),
TEXT("at"),
TEXT("unum"),
TEXT("habent"),
TEXT("hoc"),
TEXT("de"),
TEXT("calidum"),
TEXT("verbo"),
TEXT("sed"),
TEXT("quod"),
TEXT("aliqua"),
TEXT("est"),
TEXT("quod"),
TEXT("vos"),
TEXT("vel"),
TEXT("quod"),
TEXT("in"),
TEXT("de"),
TEXT("ut"),
TEXT("et"),
TEXT("a")
TEXT("in"),
TEXT("nos"),
TEXT("potest"),
TEXT("ex"),
TEXT("alia"),
TEXT("erant"),
TEXT("quibus"),
TEXT("facite"),
TEXT("eorum"),
TEXT("tempore"),
TEXT("si"),
TEXT("voluntas"),
TEXT("quam"),
TEXT("Dixitque"),
TEXT("an"),
TEXT("quisque"),
TEXT("indica"),
TEXT("quod"),
TEXT("set"),
TEXT("tribus"),
TEXT("volo"),
TEXT("aer"),
TEXT("etiam"),
TEXT("etiam"),
TEXT("fabula"),
TEXT("parva"),
TEXT("finem"),
TEXT("posuit"),
TEXT("domum"),
TEXT("lego"),
TEXT("manibus"),
TEXT("portus"),
TEXT("magna"),
TEXT("eamque"),
TEXT("addunt"),
TEXT("etiam"),
TEXT("terra"),
TEXT("hic"),
TEXT("necesse"),
TEXT("magnum"),
TEXT("princeps"),
TEXT("talis"),
TEXT("sequitur"),
TEXT("actum"),
TEXT("quid"),
TEXT("quaeris"),
TEXT("homines"),
TEXT("mutatio"),
TEXT("abiit"),
TEXT("lucem"),
TEXT("quaedam"),
TEXT("domus"),
TEXT("ipsum"),
TEXT("tentant"),
TEXT("nos"),
TEXT("rursus"),
TEXT("pecus"),
TEXT("punctum"),
TEXT("mater"),
TEXT("orbis"),
TEXT("prope"),
TEXT("aedificabis"),
TEXT("ipsum"),
TEXT("terra"),
TEXT("pater"),
TEXT("aliqua"),
TEXT("novum"),
TEXT("opus"),
TEXT("pars"),
TEXT("accipe"),
TEXT("adepto"),
TEXT("factum"),
TEXT("vivo"),
TEXT("ubi"),
TEXT("postquam"),
TEXT("rursus"),
TEXT("parum"),
TEXT("nisi"),
TEXT("per"),
TEXT("hominis"),
TEXT("anno"),
TEXT("factum"),
TEXT("ostende"),
TEXT("omnis"),
TEXT("bonum"),
TEXT("me"),
TEXT("dabit"),
TEXT("nostrum"),
TEXT("sub"),
TEXT("nomen"),
TEXT("ipsum"),
TEXT("per"),
TEXT("iustus"),
TEXT("forma"),
TEXT("sententia"),
TEXT("magna"),
TEXT("puto"),
TEXT("dicunt"),
TEXT("adiuva"),
TEXT("humilis"),
TEXT("differunt"),
TEXT("vicissim"),
TEXT("causa"),
TEXT("tantum"),
TEXT("significant"),
TEXT("antequam"),
TEXT("movemur"),
TEXT("ius"),
TEXT("puer"),
TEXT("Vetus"),
TEXT("etiam"),
TEXT("idem"),
TEXT("quae"),
TEXT("omnes"),
TEXT("ibi"),
TEXT("cum"),
TEXT("ascendit"),
TEXT("usus"),
TEXT("tuus"),
TEXT("modo"),
TEXT("de"),
TEXT("multis"),
TEXT("tunc"),
TEXT("eorum"),
TEXT("scribo"),
TEXT("utinam"),
TEXT("sicut"),
TEXT("ita"),
TEXT("haec"),
TEXT("eius"),
TEXT("longis"),
TEXT("fac"),
TEXT("aliquid"),
TEXT("video"),
TEXT("eo"),
TEXT("duobus"),
TEXT("habet"),
TEXT("respice"),
TEXT("die"),
TEXT("potuit"),
TEXT("vade"),
TEXT("venit"),
TEXT("Feceruntque"),
TEXT("numerus"),
TEXT("tuba"),
TEXT("canerent"),
TEXT("nulla"),
TEXT("maxime"),
TEXT("populus"),
TEXT("mea"),
TEXT("supra"),
TEXT("scitis"),
TEXT("aquam"),
TEXT("quam"),
TEXT("call"),
TEXT("prima"),
TEXT("qui"),
TEXT("ut"),
TEXT("descendit"),
TEXT("latere"),
TEXT("fuit"),
TEXT("nunc"),
TEXT("invenies"),
TEXT("caput"),
TEXT("stant"),
TEXT("ipse"),
TEXT("page"),
TEXT("ut"),
TEXT("patriae"),
TEXT("invenit"),
TEXT("dicendum"),
TEXT("scholae"),
TEXT("crescat"),
TEXT("studiorum"),
TEXT("etiam"),
TEXT("discant"),
TEXT("herba"),
TEXT("Cover"),
TEXT("cibum"),
TEXT("solis"),
TEXT("quatuor"),
TEXT("inter"),
TEXT("status"),
TEXT("custodi"),
TEXT("oculus"),
TEXT("numquam"),
TEXT("novissime"),
TEXT("dimitte"),
TEXT("cogitavit"),
TEXT("urbem"),
TEXT("lignum"),
TEXT("transire"),
TEXT("fundum"),
TEXT("difficile"),
TEXT("initium"),
TEXT("ut"),
TEXT("fabula"),
TEXT("Viderunt omnes"),
TEXT("tantum"),
TEXT("mare"),
TEXT("hauriret"),
TEXT("reliquit"),
TEXT("quondam"),
TEXT("currunt"),
TEXT("non"),
TEXT("cum"),
TEXT("turba"),
TEXT("proxime"),
TEXT("noctis"),
TEXT("ipsum"),
TEXT("vita"),
TEXT("pauci"),
TEXT("aquilonem"),
TEXT("liber"),
TEXT("ferte"),
TEXT("tulit"),
TEXT("scientia"),
TEXT("manducare"),
TEXT("locus"),
TEXT("amicitia"),
TEXT("coeperunt"),
TEXT("idea"),
TEXT("pisces"),
TEXT("montem"),
TEXT("subsisto"),
TEXT("quondam"),
TEXT("basi"),
TEXT("audite"),
TEXT("equo"),
TEXT("sectis"),
TEXT("certus"),
TEXT("vigilate"),
TEXT("colorem"),
TEXT("faciem"),
TEXT("lignum"),
TEXT("aperi"),
TEXT("videtur"),
TEXT("simul"),
TEXT("postero"),
TEXT("album"),
TEXT("filii"),
TEXT("incipe"),
TEXT("obtinuit"),
TEXT("ambulate"),
TEXT("exemplum"),
TEXT("relevare"),
TEXT("cartam"),
TEXT("semper"),
TEXT("musica"),
TEXT("eorum"),
TEXT("et"),
TEXT("caracterem"),
TEXT("saepe"),
TEXT("litteris"),
TEXT("usque"),
TEXT("mille passuum"),
TEXT("fluvio"),
TEXT("pedes"),
TEXT("cura"),
TEXT("secundo"),
TEXT("sufficit"),
TEXT("patet"),
TEXT("puella"),
TEXT("adulescens"),
TEXT("parata"),
TEXT("supra"),
TEXT("in perpetuum"),
TEXT("album"),
TEXT("tametsi"),
TEXT("sentio"),
TEXT("Disputatio"),
TEXT("avem"),
TEXT("mox"),
TEXT("corpus"),
TEXT("canem"),
TEXT("familia"),
TEXT("dirige"),
TEXT("aut statum"),
TEXT("relinquo"),
TEXT("canticum"),
TEXT("metiretur"),
TEXT("ostium"),
TEXT("Vestibulum"),
TEXT("nigrum"),
TEXT("breves"),
TEXT("numerales"),
TEXT("class"),
TEXT("spiritus"),
TEXT("quaestio"),
TEXT("fieri"),
TEXT("completum"),
TEXT("navem"),
TEXT("area"),
TEXT("dimidiam"),
TEXT("petrae"),
TEXT("ut"),
TEXT("ignis"),
TEXT("austri"),
TEXT("forsit"),
TEXT("frustrum"),
TEXT("nuntiavit"),
TEXT("cognovit"),
TEXT("factum"),
TEXT("cum"),
TEXT("omnis"),
TEXT("rex"),
TEXT("platea"),
TEXT("multiplicabo"),
TEXT("aliquid"),
TEXT("scilicet"),
TEXT("manete"),
TEXT("rotam"),
TEXT("pleni"),
TEXT("vi"),
TEXT("hyacintho"),
TEXT("obiectum"),
TEXT("decernere"),
TEXT("superficies"),
TEXT("abyssus"),
TEXT("lunam"),
TEXT("insulam"),
TEXT("pede"),
TEXT("ratio"),
TEXT("occupatus"),
TEXT("aliquam"),
TEXT("testimonium"),
TEXT("navicula"),
TEXT("commune"),
TEXT("aurum"),
TEXT("potest"),
TEXT("planum"),
TEXT("pro eo"),
TEXT("siccum"),
TEXT("admiramini"),
TEXT("rideat"),
TEXT("milia"),
TEXT("ago"),
TEXT("cucurrit"),
TEXT("reprehendo"),
TEXT("ludum"),
TEXT("figura"),
TEXT("aequat"),
TEXT("calidum"),
TEXT("requisierit"),
TEXT("adduxerunt"),
TEXT("calor"),
TEXT("nix"),
TEXT("piget"),
TEXT("adducet"),
TEXT("etiam"),
TEXT("distant"),
TEXT("imple"),
TEXT("orientem"),
TEXT("pingere"),
TEXT("lingua"),
TEXT("in"),
TEXT("unitas"),
TEXT("potestatem"),
TEXT("urbem"),
TEXT("Postremo"),
TEXT("quaedam"),
TEXT("fuge"),
TEXT("ceciderit"),
TEXT("ducit"),
TEXT("clamor"),
TEXT("obscuro"),
TEXT("apparatus"),
TEXT("exspecta"),
TEXT("consilium"),
TEXT("figura"),
TEXT("stella"),
TEXT("agro"),
TEXT("Reliqua"),
TEXT("recte"),
TEXT("potest"),
TEXT("libra"),
TEXT("factum"),
TEXT("pulchritudo"),
TEXT("coegi"),
TEXT("stetit"),
TEXT("continent"),
TEXT("ante"),
TEXT("docebit"),
TEXT("ultima"),
TEXT("deditque"),
TEXT("viridem"),
TEXT("acutus"),
TEXT("evolvere"),
TEXT("oceanus"),
TEXT("calidum"),
TEXT("absque"),
TEXT("minute"),
TEXT("confortare"),
TEXT("peculiarem"),
TEXT("animus"),
TEXT("retro"),
TEXT("patet"),
TEXT("caudae"),
TEXT("producere"),
TEXT("eo"),
TEXT("locus"),
TEXT("audivit"),
TEXT("optimum"),
TEXT("hora"),
TEXT("melius"),
TEXT("verum"),
TEXT("per"),
TEXT("centum"),
TEXT("quinque"),
TEXT("memores"),
TEXT("occasu"),
TEXT("terra"),
TEXT("attingere"),
TEXT("ieiunium"),
TEXT("verbo"),
TEXT("cantabo"),
TEXT("audite"),
TEXT("mensamque"),
TEXT("peregrinationes"),
TEXT("decem"),
TEXT("simplex"),
TEXT("plures"),
TEXT("vocali"),
TEXT("in"),
TEXT("bellum"),
TEXT("dormivitque"),
TEXT("contra"),
TEXT("exemplar"),
TEXT("tardus"),
TEXT("centrum"),
TEXT("amant"),
TEXT("aliquis"),
TEXT("pecuniam"),
TEXT("serviant"),
TEXT("appareant"),
TEXT("via"),
TEXT("tabula"),
TEXT("pluviae"),
TEXT("imperium"),
TEXT("regunt"),
TEXT("attrahendam"),
TEXT("frigus"),
TEXT("Observate"),
TEXT("vox"),
TEXT("navitas"),
TEXT("probabile"),
TEXT("cubili"),
TEXT("frater"),
TEXT("ovum"),
TEXT("Credere"),
TEXT("forsan"),
TEXT("colligunt"),
TEXT("repentino"),
TEXT("Numerabitis"),
TEXT("quadratum"),
TEXT("ideo"),
TEXT("longitudinis"),
TEXT("repraesentant"),
TEXT("subiectum"),
TEXT("regionem"),
TEXT("amplitudo"),
TEXT("habita"),
TEXT("dicere"),
TEXT("pondus"),
TEXT("generalis"),
TEXT("glaciem"),
TEXT("materia"),
TEXT("circulus"),
TEXT("par"),
TEXT("comprehendo"),
TEXT("divide"),
TEXT("syllabae"),
TEXT("sensi"),
TEXT("magnificum"),
TEXT("pila"),
TEXT("sed"),
TEXT("unda"),
TEXT("concrescunt"),
TEXT("cor"),
TEXT("sum"),
TEXT("praesens"),
TEXT("magna"),
TEXT("chorea"),
TEXT("locus"),
TEXT("brachium"),
TEXT("vela"),
TEXT("material"),
TEXT("fractionem"),
TEXT("saltus"),
TEXT("sedebitis"),
TEXT("generis"),
TEXT("fenestram"),
TEXT("aestas"),
TEXT("erant"),
TEXT("somnum"),
TEXT("probant"),
TEXT("agitur"),
TEXT("leg"),
TEXT("exercitium"),
TEXT("murum"),
TEXT("captiones"),
TEXT("montem"),
TEXT("volunt"),
TEXT("caelum"),
TEXT("tabulam"),
TEXT("gaudium"),
TEXT("scriptum"),
TEXT("fera"),
TEXT("instrumentum"),
TEXT("custodivit"),
TEXT("vitro"),
TEXT("faenum"),
TEXT("vitulus"),
TEXT("officium"),
TEXT("signum"),
TEXT("molli"),
TEXT("splendidum"),
TEXT("Vestibulum"),
TEXT("tempestas"),
TEXT("mense"),
TEXT("million"),
TEXT("ferre"),
TEXT("peroratum"),
TEXT("beati"),
TEXT("spero"),
TEXT("flos"),
TEXT("induere"),
TEXT("mirum"),
TEXT("abiit"),
TEXT("commercia"),
TEXT("melodiam"),
TEXT("trinus"),
TEXT("officium"),
TEXT("accipiet"),
TEXT("os"),
TEXT("exactam"),
TEXT("signum"),
TEXT("mortuus"),
TEXT("minimus"),
TEXT("angustia"),
TEXT("jubila"),
TEXT("nisi"),
TEXT("scripsit"),
TEXT("iungere"),
TEXT("suadeant"),
TEXT("mundi"),
TEXT("aspiret"),
TEXT("dominae"),
TEXT("navale"),
TEXT("surgere"),
TEXT("malum"),
TEXT("ictus"),
TEXT("olei"),
TEXT("sanguis"),
TEXT("tangerent"),
TEXT("crevit"),
TEXT("miscere"),
TEXT("bigas"),
TEXT("perierat"),
TEXT("brunneis"),
TEXT("induere"),
TEXT("hortum"),
TEXT("aequales"),
TEXT("misit"),
TEXT("elige"),
TEXT("cecidit"),
TEXT("apta"),
TEXT("influunt"),
TEXT("pulchrae"),
TEXT("ripam"),
TEXT("colligunt"),
TEXT("salvum"),
TEXT("imperium"),
TEXT("decimales"),
TEXT("aurem"),
TEXT("aliud"),
TEXT("prorsus"),
TEXT("fregit"),
TEXT("ita"),
TEXT("mediam"),
TEXT("occides"),
TEXT("filius"),
TEXT("stagnum"),
TEXT("momento"),
TEXT("statera"),
TEXT("magna"),
TEXT("ver"),
TEXT("observa"),
TEXT("puer"),
TEXT("rectas"),
TEXT("consonans"),
TEXT("gentem"),
TEXT("lac"),
TEXT("celeritate"),
TEXT("methodo"),
TEXT("organo"),
TEXT("redde"),
TEXT("saeculi"),
TEXT("section"),
TEXT("habitus"),
TEXT("nubes"),
TEXT("mirantique"),
TEXT("quietum"),
TEXT("lapis"),
TEXT("vegrandis"),
TEXT("ascenditur"),
TEXT("frigus"),
TEXT("consilium"),
TEXT("pauper"),
TEXT("multum"),
TEXT("experimento"),
TEXT("imo"),
TEXT("key"),
TEXT("ferrum"),
TEXT("una"),
TEXT("lignum"),
TEXT("flat"),
TEXT("viginti"),
TEXT("pelle"),
TEXT("risu"),
TEXT("rimula"),
TEXT("violet"),
TEXT("salire"),
TEXT("Praesent"),
TEXT("octo"),
TEXT("villa"),
TEXT("concurrunt"),
TEXT("radix"),
TEXT("emptum"),
TEXT("resuscitabo"),
TEXT("ferrum"),
TEXT("sive"),
TEXT("dis"),
TEXT("septem"),
TEXT("paragraph"),
TEXT("tertia"),
TEXT("numquid"),
TEXT("Posside"),
TEXT("capillum"),
TEXT("describere"),
TEXT("cocus"),
TEXT("pavimentum"),
TEXT("aut"),
TEXT("comburet"),
TEXT("tumulus"),
TEXT("salvum"),
TEXT("century"),
TEXT("considerate"),
TEXT("legem"),
TEXT("aliquam"),
TEXT("litore"),
TEXT("rescriptum"),
TEXT("silentium"),
TEXT("arenam"),
TEXT("solum"),
TEXT("volumen"),
TEXT("temperatus"),
TEXT("digitus"),
TEXT("industria"),
TEXT("value"),
TEXT("pugna"),
TEXT("mendacium"),
TEXT("percute"),
TEXT("excitant"),
TEXT("naturalis"),
TEXT("visum"),
TEXT("sensum"),
TEXT("capitale"),
TEXT("nolo"),
TEXT("cathedra"),
TEXT("periculum"),
TEXT("fructus"),
TEXT("dives"),
TEXT("densa"),
TEXT("miles"),
TEXT("aliquid"),
TEXT("operantur"),
TEXT("praxi"),
TEXT("separatum"),
TEXT("difficile"),
TEXT("medicus"),
TEXT("obsecro"),
TEXT("protegat"),
TEXT("meridies"),
TEXT("seges"),
TEXT("modern"),
TEXT("aliquid"),
TEXT("ictus"),
TEXT("discipulo"),
TEXT("anguli"),
TEXT("pars"),
TEXT("copia"),
TEXT("cuius"),
TEXT("locant"),
TEXT("orbis"),
TEXT("insect"),
TEXT("captus"),
TEXT("tempus"),
TEXT("indica"),
TEXT("radio"),
TEXT("Locutusque"),
TEXT("atom"),
TEXT("hominis"),
TEXT("rerum"),
TEXT("effectus"),
TEXT("electrica"),
TEXT("sperare"),
TEXT("osse"),
TEXT("cogitis"),
TEXT("imaginari"),
TEXT("praestare"),
TEXT("conveniunt"),
TEXT("ita"),
TEXT("mitis"),
TEXT("mulier"),
TEXT("dux"),
TEXT("Suspicor"),
TEXT("necesse"),
TEXT("acutum"),
TEXT("alae"),
TEXT("partum"),
TEXT("proximus"),
TEXT("lava"),
TEXT("Biblia"),
TEXT("potius"),
TEXT("turba"),
TEXT("frumentum"),
TEXT("compare"),
TEXT("nervo"),
TEXT("tintinnabulum"),
TEXT("cibum"),
TEXT("fricabis"),
TEXT("celebre"),
TEXT("pupa"),
TEXT("fluvius"),
TEXT("timore"),
TEXT("visum"),
TEXT("tenuis"),
TEXT("triangulo"),
TEXT("planeta"),
TEXT("festinate"),
TEXT("princeps"),
TEXT("coloniam"),
TEXT("horologium"),
TEXT("mea"),
TEXT("tatem"),
TEXT("intrant"),
TEXT("major"),
TEXT("recentes"),
TEXT("quaerere"),
TEXT("minor"),
TEXT("mitto"),
TEXT("flavis"),
TEXT("sino"),
TEXT("mortuus"),
TEXT("locum"),
TEXT("deserto"),
TEXT("sectam"),
TEXT("current"),
TEXT("vitae"),
TEXT("surrexit"),
TEXT("perveniunt"),
TEXT("magister"),
TEXT("semita"),
TEXT("parente"),
TEXT("litore"),
TEXT("divisione"),
TEXT("linteum"),
TEXT("substantia"),
TEXT("gratiam"),
TEXT("Pertinent"),
TEXT("post"),
TEXT("expendas"),
TEXT("chorda"),
TEXT("adipem"),
TEXT("gavisus"),
TEXT("original"),
TEXT("share"),
TEXT("statio"),
TEXT("Pater"),
TEXT("panem"),
TEXT("Testificor"),
TEXT("proprium"),
TEXT("bar"),
TEXT("offer"),
TEXT("segmentum"),
TEXT("servus"),
TEXT("anas"),
TEXT("instant"),
TEXT("ipsum"),
TEXT("gradum"),
TEXT("frequentare"),
TEXT("pullus"),
TEXT("carissimi"),
TEXT("hostem"),
TEXT("respondeo"),
TEXT("potum"),
TEXT("incididunt"),
TEXT("auxilium"),
TEXT("oratio"),
TEXT("natura"),
TEXT("range"),
TEXT("vapor"),
TEXT("motus"),
TEXT("semita"),
TEXT("liquidum"),
TEXT("stipes"),
TEXT("intelligantur"),
TEXT("quotus"),
TEXT("dentium"),
TEXT("testa"),
TEXT("cervicibus"),
TEXT("dolor"),
TEXT("mortem"),
TEXT("bellum"),
TEXT("peritia"),
TEXT("mulieres"),
TEXT("tempore"),
TEXT("solutio"),
TEXT("magnes"),
TEXT("argentum"),
TEXT("gratias"),
TEXT("ramum"),
TEXT("par"),
TEXT("etiamne"),
TEXT("maxime"),
TEXT("timere"),
TEXT("ingenti"),
TEXT("soror"),
TEXT("ferrum"),
TEXT("disputant"),
TEXT("et deinceps"),
TEXT("simile"),
TEXT("dirige"),
TEXT("experientiam"),
TEXT("Octoginta"),
TEXT("pupillam"),
TEXT("emptum"),
TEXT("ductus"),
TEXT("picem"),
TEXT("tunica"),
TEXT("missa"),
TEXT("pecto"),
TEXT("cohors"),
TEXT("fune"),
TEXT("labente"),
TEXT("vincere"),
TEXT("somniatis"),
TEXT("ad vesperum"),
TEXT("condicionis"),
TEXT("pascuntur"),
TEXT("ferramentum"),
TEXT("totalis"),
TEXT("prima"),
TEXT("olfactus"),
TEXT("vallis"),
TEXT("neque"),
TEXT("duplex"),
TEXT("cathedra"),
TEXT("perseverant"),
TEXT("clausus"),
TEXT("cursus"),
TEXT("vende"),
TEXT("successu"),
TEXT("comitatu"),
TEXT("Auferatur"),
TEXT("eventus"),
TEXT("particularis"),
TEXT("multum"),
TEXT("natant"),
TEXT("term"),
TEXT("oppositi"),
TEXT("uxorem"),
TEXT("calceum"),
TEXT("umero"),
TEXT("expandit"),
TEXT("disponere"),
TEXT("castra"),
TEXT("confingunt"),
TEXT("bombicis"),
TEXT("natus"),
TEXT("statuere"),
TEXT("quart"),
TEXT("novem"),
TEXT("dolor"),
TEXT("sonus"),
TEXT("plana"),
TEXT("forte"),
TEXT("congregate"),
TEXT("taberna"),
TEXT("tractum"),
TEXT("mittite"),
TEXT("luceat"),
TEXT("proprietate"),
TEXT("columna"),
TEXT("moleculo"),
TEXT("eligere"),
TEXT("iniuriam"),
TEXT("iterum"),
TEXT("requirunt"),
TEXT("lata"),
TEXT("praeparabit"),
TEXT("sal"),
TEXT("nasum"),
TEXT("iratus"),
TEXT("clamium"),
TEXT("continentem")
};

Pictures:



1 Like

Great job solving your problem with -1. How long do you think it took you to figure out the main cause and coming up with a solution?

We will say between 2-3 hours, I think, maybe more? I don’t always time myself when I get into “the Zone”. Part of it was that the hierarchy issue made me think I had to do some extravagant dancing around the code. After each unsuccessful dance around, I followed the stream and found it.

But as I continued, I realized I did not need so much coding. Even now I paired that same code down, it will be revealed in the next update. I also figured out how to fix IsIsograms, an issue I could find no clear answer on. I found a way to implement it without any crashes every time, guaranteed, and very simple to implement. Elegant? Maybe not? I don’t know, but it works and won’t break.

Privacy & Terms